{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<i>Copyright (c) Microsoft Corporation. All rights reserved.</i>\n",
    "\n",
    "<i>Licensed under the MIT License.</i>\n",
    "\n",
    "# Deployment of a model to an Azure Container Instance (ACI)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Table of contents <a id=\"table_of_content\"></a>\n",
    "\n",
    "1. [Introduction](#intro)\n",
    "1. [Model retrieval and export](#model)\n",
    "1. [Model deployment on Azure](#deploy)\n",
    "  1. [Workspace retrieval](#workspace)\n",
    "  1. [Model registration](#register)\n",
    "  1. [Scoring script](#scoring)\n",
    "  1. [Using AzureML Environments for Environment setup](#env)\n",
    "  1. [Computational resources - Azure Container Instance](#compute)\n",
    "  1. [Web service deployment](#websvc)\n",
    "1. [Notes on web service deployment](#notes)\n",
    "1. [Clean-up](#clean)\n",
    "1. [Next steps](#next-steps)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 1. Introduction <a id=\"intro\"></a>\n",
    "\n",
    "While building a good performing model is important, for it to be useful, it needs to be accessible. In this notebook, we will learn how to make this possible by deploying our model onto Azure. We will more particularly see how to:\n",
    "- Register a model there\n",
    "- Create a Docker image that contains our model\n",
    "- Deploy a web service on [Azure Container Instances](https://azure.microsoft.com/en-us/services/container-instances/) using this Docker image.\n",
    "\n",
    "<img src=\"media/ACI_diagram_2.jpg\" width=\"500\" style=\"float: left;\" alt=\"Web service deployment workflow\">"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Pre-requisites <a id=\"pre-reqs\"></a>\n",
    "For this notebook to run properly on our machine, an Azure workspace is required. If we don't have one, we need to first run through the short [20_azure_workspace_setup.ipynb](20_azure_workspace_setup.ipynb) notebook to create it.\n",
    "\n",
    "### Library import <a id=\"libraries\"></a>\n",
    "Throughout this notebook, we will be using a variety of libraries. We are listing them here for better readibility."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Azure ML SDK Version: 1.0.85\n"
     ]
    }
   ],
   "source": [
    "# For automatic reloading of modified libraries\n",
    "%reload_ext autoreload\n",
    "%autoreload 2\n",
    "\n",
    "# Regular python libraries\n",
    "import os\n",
    "import sys\n",
    "\n",
    "# fast.ai\n",
    "from fastai.vision import models\n",
    "\n",
    "# Azure\n",
    "import azureml.core\n",
    "from azureml.core import Experiment, Workspace\n",
    "from azureml.core.image import ContainerImage\n",
    "from azureml.core.model import Model\n",
    "from azureml.core.webservice import AciWebservice, Webservice\n",
    "from azureml.exceptions import WebserviceException\n",
    "\n",
    "# Computer Vision repository\n",
    "sys.path.extend([\".\", \"../..\"])\n",
    "# This \"sys.path.extend()\" statement allows us to move up the directory hierarchy \n",
    "# and access the utils_cv package\n",
    "from utils_cv.common.deployment import generate_yaml\n",
    "from utils_cv.common.data import root_path \n",
    "from utils_cv.classification.model import IMAGENET_IM_SIZE, model_to_learner\n",
    "\n",
    "# Check core SDK version number\n",
    "print(f\"Azure ML SDK Version: {azureml.core.VERSION}\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 2. Model retrieval and export <a id=\"model\"></a>\n",
    "\n",
    "For demonstration purposes, we will use here a ResNet18 model, pretrained on ImageNet. The following steps would be the same if we had trained a model locally (cf. [**01_training_introduction.ipynb**](01_training_introduction.ipynb) notebook for details).\n",
    "\n",
    "Let's first retrieve the model."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "learn = model_to_learner(models.resnet18(pretrained=True), IMAGENET_IM_SIZE)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "To be able to use this model, we need to export it to our local machine. We store it in an `outputs/` subfolder."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "output_folder = os.path.join(os.getcwd(), 'outputs')\n",
    "model_name = 'im_classif_resnet18'  # Name we will give our model both locally and on Azure\n",
    "pickled_model_name = f'{model_name}.pkl'\n",
    "os.makedirs(output_folder, exist_ok=True)\n",
    "\n",
    "learn.export(os.path.join(output_folder, pickled_model_name))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "To create or access an Azure ML Workspace, you will need the following information. If you are coming from previous notebook you can retreive existing workspace, or create a new one if you are just starting with this notebook.\n",
    "\n",
    "- subscription ID: the ID of the Azure subscription we are using\n",
    "- resource group: the name of the resource group in which our workspace resides\n",
    "- workspace region: the geographical area in which our workspace resides (e.g. \"eastus2\" -- other examples are ---available here -- note the lack of spaces)\n",
    "- workspace name: the name of the workspace we want to create or retrieve.\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "tags": [
     "parameters"
    ]
   },
   "outputs": [],
   "source": [
    "subscription_id = \"YOUR_SUBSCRIPTION_ID\"\n",
    "resource_group = \"YOUR_RESOURCE_GROUP_NAME\"  \n",
    "workspace_name = \"YOUR_WORKSPACE_NAME\"  \n",
    "workspace_region = \"YOUR_WORKSPACE_REGION\" #Possible values eastus, eastus2 and so on."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 3. Model deployment on Azure <a id=\"deploy\"></a>\n",
    "\n",
    "### 3.A Workspace retrieval <a id=\"workspace\"></a>\n",
    "\n",
    "In [prior notebook](20_azure_workspace_setup.ipynb) notebook, we created a workspace. This is a critical object from which we will build all the pieces we need to deploy our model as a web service. Let's start by retrieving it."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "# A util method that creates a workspace or retrieves one if it exists, also takes care of Azure Authentication\n",
    "from utils_cv.common.azureml import get_or_create_workspace\n",
    "\n",
    "ws = get_or_create_workspace(\n",
    "        subscription_id,\n",
    "        resource_group,\n",
    "        workspace_name,\n",
    "        workspace_region)\n",
    "\n",
    "# Print the workspace attributes\n",
    "print('Workspace name: ' + ws.name, \n",
    "      'Workspace region: ' + ws.location, \n",
    "      'Subscription id: ' + ws.subscription_id, \n",
    "      'Resource group: ' + ws.resource_group, sep = '\\n')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 3.B Model registration <a id=\"register\"></a>\n",
    "\n",
    "Our final goal is to deploy our model as a web service. To do so, we need to first register it in our workspace, i.e. place it in our workspace's model registry. We can do this in 2 ways:\n",
    "1. register the model directly\n",
    "2. upload the model on Azure and then register it there.\n",
    "\n",
    "The advantage of the first method is that it does not require the setup of an experiment or of any runs. The advantage of the second fashion is that we can keep track of the models that we used or trained in a given experiment, and understand where the ones we ended up registering come from.\n",
    "\n",
    "The cells below show each of the methods."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Without experiment <a id=\"noexp\"></a>\n",
    "\n",
    "We leverage the `register` method from the Azure ML `Model` object. For that, we just need the location of the model we saved on our local machine, its name and our workspace object."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Registering model im_classif_resnet18\n"
     ]
    }
   ],
   "source": [
    "model = Model.register(\n",
    "    model_path = os.path.join('outputs', pickled_model_name),\n",
    "    model_name = model_name,\n",
    "    tags = {\"Model\": \"Pretrained ResNet18\"},\n",
    "    description = \"Image classifier\",\n",
    "    workspace = ws\n",
    ")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### With an experiment <a id=\"exp\"></a>\n",
    "\n",
    "An experiment contains a series of trials called `Runs`. A run typically contains some tasks, such as training a model, etc. Through a run's methods, we can log several metrics such as training and test loss and accuracy, and even tag our run. The full description of the run class is available [here](https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.run.run?view=azure-ml-py). In our case, however, we just need the run to attach our model file to our workspace and experiment.\n",
    "\n",
    "We do this by using `run.upload_file()` and `run.register_model()`, which takes:\n",
    "- a `model_name` that represents what our model does\n",
    "- and the `model_path` relative to the run.\n",
    "\n",
    "Using `run.upload_file()` and specifying the `outputs/` folder allows us to check the presence of the uploaded model on the Azure portal. This is especially convenient when we want to try different versions of a model, or even different models entirely, and keep track of them all, even if we end up registering only the best performing one.\n",
    "\n",
    "Let's first create a new experiment. If an experiment with the same name already exists in our workspace, the run we will generate will be recorded under that already existing experiment."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Create a new/Retrieve an existing experiment\n",
    "experiment_name = 'image-classifier-webservice'\n",
    "experiment = Experiment(workspace=ws, name=experiment_name)\n",
    "print(f\"New/Existing experiment:\\n \\\n",
    "      --> Name: {experiment.name}\\n \\\n",
    "      --> Workspace name: {experiment.workspace.name}\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Initialize the run\n",
    "run = experiment.start_logging(snapshot_directory=None)\n",
    "# \"snapshot_directory=None\" prevents a snapshot from being saved -- this helps keep the amount of storage used low"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Now that we have launched our run, we can see our experiment on the Azure portal, under `Experiments` (in the left-hand side list).\n",
    "\n",
    "<img src=\"media/experiment.jpg\" width=\"800\" alt=\"Azure portal view of experiment\">"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We can now attach our local model to our workspace and experiment."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<azureml._restclient.models.batch_artifact_content_information_dto.BatchArtifactContentInformationDto at 0x1c35293b470>"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Upload the model (.pkl) file to Azure\n",
    "run.upload_file(\n",
    "    name=os.path.join('outputs', pickled_model_name), \n",
    "    path_or_stream=os.path.join(os.getcwd(), 'outputs', pickled_model_name)\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Register the model with the workspace\n",
    "model = run.register_model(\n",
    "    model_name=model_name,\n",
    "    model_path=os.path.join('outputs', pickled_model_name),\n",
    "    tags = {\"Model\": \"Pretrained ResNet18\"},\n",
    ")\n",
    "# !!! We need to make sure that the model name we use here is the same as in the scoring script below !!!"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Now that the model is uploaded and registered, we can see it on the Azure platform, under `Outputs` and `Models`\n",
    "\n",
    "<div class=\"inline-block\">\n",
    "    <img src=\"media/uploaded_model.jpg\" width=\"800\" alt=\"Azure portal view of the Outputs/ folder\">\n",
    "</div>\n",
    "\n",
    "<div class=\"inline-block\">\n",
    "    <img src=\"media/models.jpg\" width=\"800\" alt=\"Azure portal view of the Models section\">\n",
    "</div>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We can also check that it is programatically accessible"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Model:\n",
      " --> Name: im_classif_resnet18\n",
      "       --> ID: im_classif_resnet18:11\n",
      "       --> Path:azureml-models\\im_classif_resnet18\\11\\im_classif_resnet18.pkl\n"
     ]
    }
   ],
   "source": [
    "print(f\"Model:\\n --> Name: {model.name}\\n \\\n",
    "      --> ID: {model.id}\\n \\\n",
    "      --> Path:{model._get_model_path_remote(model.name, model.version, ws)}\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "['outputs/im_classif_resnet18.pkl']"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "run.get_file_names()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "If we are also interested in verifying which model we uploaded, we can download it to our local machine"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'im_classif_resnet18.pkl'"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "model.download(exist_ok=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<i><b>Note:</b> If we ran the cells in both the \"with an experiment\" and \"without experiment\" sections, we got 2 iterations of the same model registered on Azure. This is not a problem as any operation that we perform on the \"model\" object, later on, will be associated with the latest version of the model that we registered. To clean things up, we can go to the portal, select the model we do not want and click the \"Delete\" button. In general, we would register the model using only one of these 2 methods. </i>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We are all done with our model registration, so we can close our run."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Close the run\n",
    "run.complete()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Access the portal\n",
    "run"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 3.C Scoring script <a id=\"scoring\"></a>\n",
    "For the web service to return predictions on a given input image, we need to provide it with instructions on how to use the model we just registered. These instructions are stored in the scoring script.\n",
    "\n",
    "This script must contain two required functions, `init()` and `run(input_data)`:\n",
    "- In the `init()` function, we typically load the model into a global object. This function is executed only once when the Docker container is started.\n",
    "- In the `run(input_data)` function, the model is used to predict a value based on the input data. The input and output of `run` typically use JSON as serialization and de-serialization format but we are not limited to that.\n",
    "\n",
    "<i><b>Note:</b> The \"run()\" function here is different from the \"run\" object we created in our experiment</i>\n",
    "\n",
    "This file must also be stored in the current directory."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [],
   "source": [
    "scoring_script = \"score.py\""
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Overwriting score.py\n"
     ]
    }
   ],
   "source": [
    "%%writefile $scoring_script\n",
    "# Copyright (c) Microsoft. All rights reserved.\n",
    "# Licensed under the MIT license.\n",
    "\n",
    "import os\n",
    "import json\n",
    "\n",
    "from base64 import b64decode\n",
    "from io import BytesIO\n",
    "\n",
    "from azureml.core.model import Model\n",
    "from fastai.vision import load_learner, open_image\n",
    "\n",
    "def init():\n",
    "    global model\n",
    "    model_path = Model.get_model_path(model_name='im_classif_resnet18')\n",
    "    # ! We cannot use the *model_name* variable here otherwise the execution on Azure will fail !\n",
    "\n",
    "    model_dir_path, model_filename = os.path.split(model_path)\n",
    "    model = load_learner(model_dir_path, model_filename)\n",
    "\n",
    "\n",
    "def run(raw_data):\n",
    "\n",
    "    # Expects raw_data to be a list within a json file\n",
    "    result = []    \n",
    "    \n",
    "    for im_string in json.loads(raw_data)['data']:\n",
    "        im_bytes = b64decode(im_string)\n",
    "        try:\n",
    "            im = open_image(BytesIO(im_bytes))\n",
    "            pred_class, pred_idx, outputs = model.predict(im)\n",
    "            result.append({\"label\": str(pred_class), \"probability\": str(outputs[pred_idx].item())})\n",
    "        except Exception as e:\n",
    "            result.append({\"label\": str(e), \"probability\": ''})\n",
    "    return result"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 3.D Using `azureml.core.environment` to build the docker image and for deployment <a id=\"env\"></a>\n",
    "\n",
    "Azure Machine Learning provides an easy way to manage environments through [azureml.core.environment](https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment?view=azure-ml-py) in the AzureML Python SDK.\n",
    "\n",
    "`Environments` provide a way to manage software dependencies so that controlled environments are reproducible with minimal manual configuration as you move between local and distributed cloud development environments.\n",
    "\n",
    "Most importantly, it allows users to encapsulate the various software settings and dependencies in a reproducible manner through the use of containerization and package management tools such as conda, a popular open-source, cross-platform, language-agnostic package management tool.\n",
    "\n",
    "In order to make predictions on the Azure platform, it is important to create an environment as similar as possible to the one in which the model was trained. Here, we use a fast.ai pretrained model that also requires pytorch and a few other libraries. To re-create this environment, we use a [Docker container](https://www.docker.com/resources/what-container). We configure it via a yaml file that will contain all the conda dependencies needed by the model. This yaml file is a subset of  `<repo_root>/classification/environment.yml`."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "# Conda environment specification. The dependencies defined in this file will\r\n",
      "# be automatically provisioned for runs with userManagedDependencies=False.\r\n",
      "\n",
      "# Details about the Conda environment file format:\r\n",
      "# https://conda.io/docs/user-guide/tasks/manage-environments.html#create-env-file-manually\r\n",
      "\n",
      "name: project_environment\n",
      "dependencies:\n",
      "  # The python interpreter version.\r\n",
      "  # Currently Azure ML only supports 3.5.2 and later.\r\n",
      "- python=3.6.2\n",
      "\n",
      "- pip:\n",
      "    # Required packages for AzureML execution, history, and data preparation.\r\n",
      "  - azureml-defaults\n",
      "\n",
      "- pytorch==1.2.0\n",
      "- fastai==1.0.57\n",
      "- spacy\n",
      "- dataclasses\n",
      "channels:\n",
      "- conda-forge\n",
      "- defaults\n",
      "- pytorch\n",
      "- fastai\n",
      "\n"
     ]
    }
   ],
   "source": [
    "# Create a deployment-specific yaml file from classification/environment.yml\n",
    "try:\n",
    "    generate_yaml(\n",
    "        directory=os.path.join(root_path()), \n",
    "        ref_filename='environment.yml',\n",
    "        needed_libraries=['pytorch', 'spacy', 'fastai', 'dataclasses'],\n",
    "        conda_filename='myenv.yml'\n",
    "    )\n",
    "    # Note: Take a look at the generate_yaml() function for details on how to create your yaml file from scratch\n",
    "\n",
    "except FileNotFoundError:\n",
    "    raise FileNotFoundError(\"The *environment.yml* file is missing - Please make sure to retrieve it from the github repository\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We will now use the generated conda dependencies yaml file named `myenv.yml` to create an AzureML `Environment` object from it using the `azureml.core.environment` class.\n",
    "\n",
    "Then, we will specify a base dockerfile to use to build the docker image that we will be using for deployment, which adds specific packages that are required for inferencing.\n",
    "\n",
    "Finally, we will register the generated `Environment` object to our workspace with AzureML Environment Management Service (EMS) so that we can retrieve it for reuse throughout Azure Machine Learning Services.\n",
    "\n",
    "We will be able to retrieve the environment by using the name that we specified (`im_classif_resnet18`) and the workspace that we created. Then we can use the same environment to deploy to other compute targets such as AKS and Azure App Services.\n",
    "\n",
    "To learn more about how to retrieve and reuse environments in AzureML services, please refer to the [documentation page](https://docs.microsoft.com/en-us/azure/machine-learning/how-to-use-environments)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{\n",
       "    \"name\": \"im_classif_resnet18\",\n",
       "    \"version\": \"1\",\n",
       "    \"environmentVariables\": {\n",
       "        \"EXAMPLE_ENV_VAR\": \"EXAMPLE_VALUE\"\n",
       "    },\n",
       "    \"python\": {\n",
       "        \"userManagedDependencies\": false,\n",
       "        \"interpreterPath\": \"python\",\n",
       "        \"condaDependenciesFile\": null,\n",
       "        \"baseCondaEnvironment\": null,\n",
       "        \"condaDependencies\": {\n",
       "            \"channels\": [\n",
       "                \"conda-forge\",\n",
       "                \"defaults\",\n",
       "                \"pytorch\",\n",
       "                \"fastai\"\n",
       "            ],\n",
       "            \"dependencies\": [\n",
       "                \"python=3.6.2\",\n",
       "                {\n",
       "                    \"pip\": [\n",
       "                        \"azureml-defaults\"\n",
       "                    ]\n",
       "                },\n",
       "                \"pytorch==1.2.0\",\n",
       "                \"fastai==1.0.57\",\n",
       "                \"spacy\",\n",
       "                \"dataclasses\"\n",
       "            ],\n",
       "            \"name\": \"azureml_53f7459b2d11a780edbefaa1f46263fa\"\n",
       "        }\n",
       "    },\n",
       "    \"docker\": {\n",
       "        \"enabled\": false,\n",
       "        \"baseImage\": null,\n",
       "        \"baseDockerfile\": \"FROM mcr.microsoft.com/azureml/base:intelmpi2018.3-ubuntu16.04\\nRUN apt-get update &&     apt-get install -y libssl-dev build-essential libgl1-mesa-glx\\n\",\n",
       "        \"sharedVolumes\": true,\n",
       "        \"shmSize\": null,\n",
       "        \"arguments\": [],\n",
       "        \"baseImageRegistry\": {\n",
       "            \"address\": null,\n",
       "            \"username\": null,\n",
       "            \"password\": null\n",
       "        }\n",
       "    },\n",
       "    \"spark\": {\n",
       "        \"repositories\": [],\n",
       "        \"packages\": [],\n",
       "        \"precachePackages\": true\n",
       "    },\n",
       "    \"databricks\": {\n",
       "        \"mavenLibraries\": [],\n",
       "        \"pypiLibraries\": [],\n",
       "        \"rcranLibraries\": [],\n",
       "        \"jarLibraries\": [],\n",
       "        \"eggLibraries\": []\n",
       "    },\n",
       "    \"inferencingStackVersion\": \"latest\"\n",
       "}"
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from azureml.core import Environment\n",
    "from azureml.core.environment import DEFAULT_CPU_IMAGE\n",
    "\n",
    "cv_test_env = Environment.from_conda_specification(name=\"im_classif_resnet18\", file_path=\"myenv.yml\")\n",
    "\n",
    "# specifying the latest required inferencing stack to be used for deployment\n",
    "cv_test_env.inferencing_stack_version=\"latest\"\n",
    "\n",
    "# We will be using the default CPU image for Azure Machine Learning as the base image\n",
    "# and will add required packages for inferencing\n",
    "cv_test_env.docker.base_dockerfile=\"\"\"FROM {}\n",
    "RUN apt-get update && \\\n",
    "    apt-get install -y libssl-dev build-essential libgl1-mesa-glx\n",
    "\"\"\".format(DEFAULT_CPU_IMAGE)\n",
    "\n",
    "# setting docker.base_image to None to use the base_dockerfile specified above to build the image\n",
    "cv_test_env.docker.base_image=None\n",
    "\n",
    "# Now, let's try registering the environment. \n",
    "# You'll be able to see the specified environment printed out.\n",
    "cv_test_env.register(ws)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Image Build Status: Running\n",
      "\n",
      "2020/04/09 20:31:52 Downloading source code...\n",
      "2020/04/09 20:31:53 Finished downloading source code\n",
      "2020/04/09 20:31:54 Creating Docker network: acb_default_network, driver: 'bridge'\n",
      "2020/04/09 20:31:54 Successfully set up Docker network: acb_default_network\n",
      "2020/04/09 20:31:54 Setting up Docker configuration...\n",
      "2020/04/09 20:31:55 Successfully set up Docker configuration\n",
      "2020/04/09 20:31:55 Logging in to registry: cvwsbbd59dea.azurecr.io\n",
      "2020/04/09 20:31:56 Successfully logged into cvwsbbd59dea.azurecr.io\n",
      "2020/04/09 20:31:56 Executing step ID: acb_step_0. Timeout(sec): 5400, Working directory: '', Network: 'acb_default_network'\n",
      "2020/04/09 20:31:56 Scanning for dependencies...\n",
      "2020/04/09 20:31:57 Successfully scanned dependencies\n",
      "2020/04/09 20:31:57 Launching container with name: acb_step_0\n",
      "Sending build context to Docker daemon  61.44kB\n",
      "\n",
      "Step 1/22 : FROM mcr.microsoft.com/azureml/o16n-base/python-assets:latest AS inferencing-assets\n",
      "latest: Pulling from azureml/o16n-base/python-assets\n",
      "8f62c0f3bb41: Pulling fs layer\n",
      "8f62c0f3bb41: Verifying Checksum\n",
      "8f62c0f3bb41: Download complete\n",
      "8f62c0f3bb41: Pull complete\n",
      "Digest: sha256:065414379a261e7931bd91518c83113085848ba19890ef75e8f5e6ffd62c6b86\n",
      "Status: Downloaded newer image for mcr.microsoft.com/azureml/o16n-base/python-assets:latest\n",
      " ---> e1154c54d388\n",
      "Step 2/22 : FROM mcr.microsoft.com/azureml/base:intelmpi2018.3-ubuntu16.04\n",
      "intelmpi2018.3-ubuntu16.04: Pulling from azureml/base\n",
      "Digest: sha256:a1b514f3ba884b9a7695cbba5638933ddaf222e8ce3e8c81e8cdf861679abb05\n",
      "Status: Downloaded newer image for mcr.microsoft.com/azureml/base:intelmpi2018.3-ubuntu16.04\n",
      " ---> 93a72e6bd1ce\n",
      "Step 3/22 : RUN apt-get update &&     apt-get install -y libssl-dev build-essential libgl1-mesa-glx\n",
      " ---> Running in 9fd23d97599d\n",
      "Get:1 http://security.ubuntu.com/ubuntu xenial-security InRelease [109 kB]\n",
      "Get:2 http://ppa.launchpad.net/adiscon/v8-stable/ubuntu xenial InRelease [17.5 kB]\n",
      "Get:3 http://archive.ubuntu.com/ubuntu xenial InRelease [247 kB]\n",
      "Get:4 http://ppa.launchpad.net/adiscon/v8-stable/ubuntu xenial/main amd64 Packages [7381 B]\n",
      "Get:5 http://security.ubuntu.com/ubuntu xenial-security/main amd64 Packages [1087 kB]\n",
      "Get:6 http://archive.ubuntu.com/ubuntu xenial-updates InRelease [109 kB]\n",
      "Get:7 http://archive.ubuntu.com/ubuntu xenial-backports InRelease [107 kB]\n",
      "Get:8 http://archive.ubuntu.com/ubuntu xenial/main amd64 Packages [1558 kB]\n",
      "Get:9 http://security.ubuntu.com/ubuntu xenial-security/restricted amd64 Packages [12.7 kB]\n",
      "Get:10 http://security.ubuntu.com/ubuntu xenial-security/universe amd64 Packages [623 kB]\n",
      "Get:11 http://security.ubuntu.com/ubuntu xenial-security/multiverse amd64 Packages [6282 B]\n",
      "Get:12 http://archive.ubuntu.com/ubuntu xenial/restricted amd64 Packages [14.1 kB]\n",
      "Get:13 http://archive.ubuntu.com/ubuntu xenial/universe amd64 Packages [9827 kB]\n",
      "Get:14 http://archive.ubuntu.com/ubuntu xenial/multiverse amd64 Packages [176 kB]\n",
      "Get:15 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages [1456 kB]\n",
      "Get:16 http://archive.ubuntu.com/ubuntu xenial-updates/restricted amd64 Packages [13.1 kB]\n",
      "Get:17 http://archive.ubuntu.com/ubuntu xenial-updates/universe amd64 Packages [1028 kB]\n",
      "Get:18 http://archive.ubuntu.com/ubuntu xenial-updates/multiverse amd64 Packages [19.3 kB]\n",
      "Get:19 http://archive.ubuntu.com/ubuntu xenial-backports/main amd64 Packages [7942 B]\n",
      "Get:20 http://archive.ubuntu.com/ubuntu xenial-backports/universe amd64 Packages [8807 B]\n",
      "Fetched 16.4 MB in 2s (6600 kB/s)\n",
      "Reading package lists...\n",
      "Reading package lists...\n",
      "Building dependency tree...\n",
      "Reading state information...\n",
      "build-essential is already the newest version (12.1ubuntu2).\n",
      "The following packages were automatically installed and are no longer required:\n",
      "  dh-python distro-info-data file gir1.2-glib-2.0 iso-codes libapt-inst2.0\n",
      "  libdbus-glib-1-2 libgirepository-1.0-1 libmagic1 libmpdec2 libpython3-stdlib\n",
      "  libpython3.5-minimal libpython3.5-stdlib lsb-release mime-support\n",
      "  powermgmt-base python-apt-common python3 python3-apt python3-dbus python3-gi\n",
      "  python3-minimal python3-pycurl python3-software-properties python3.5\n",
      "  python3.5-minimal unattended-upgrades\n",
      "Use 'apt autoremove' to remove them.\n",
      "The following additional packages will be installed:\n",
      "  libdrm-amdgpu1 libdrm-common libdrm-intel1 libdrm-nouveau2 libdrm-radeon1\n",
      "  libdrm2 libelf1 libgl1-mesa-dri libglapi-mesa libllvm6.0 libpciaccess0\n",
      "  libsensors4 libssl-doc libtxc-dxtn-s2tc0 libx11-xcb1 libxcb-dri2-0\n",
      "  libxcb-dri3-0 libxcb-glx0 libxcb-present0 libxcb-sync1 libxdamage1\n",
      "  libxfixes3 libxshmfence1 libxxf86vm1 zlib1g zlib1g-dev\n",
      "Suggested packages:\n",
      "  pciutils lm-sensors\n",
      "The following NEW packages will be installed:\n",
      "  libdrm-amdgpu1 libdrm-common libdrm-intel1 libdrm-nouveau2 libdrm-radeon1\n",
      "  libdrm2 libelf1 libgl1-mesa-dri libgl1-mesa-glx libglapi-mesa libllvm6.0\n",
      "  libpciaccess0 libsensors4 libssl-dev libssl-doc libtxc-dxtn-s2tc0\n",
      "  libx11-xcb1 libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0 libxcb-present0\n",
      "  libxcb-sync1 libxdamage1 libxfixes3 libxshmfence1 libxxf86vm1 zlib1g-dev\n",
      "The following packages will be upgraded:\n",
      "  zlib1g\n",
      "1 upgraded, 27 newly installed, 0 to remove and 62 not upgraded.\n",
      "Need to get 23.5 MB of archives.\n",
      "After this operation, 216 MB of additional disk space will be used.\n",
      "Get:1 http://archive.ubuntu.com/ubuntu xenial/main amd64 libxdamage1 amd64 1:1.1.4-2 [6946 B]\n",
      "Get:2 http://archive.ubuntu.com/ubuntu xenial/main amd64 libxfixes3 amd64 1:5.0.1-2 [11.1 kB]\n",
      "Get:3 http://archive.ubuntu.com/ubuntu xenial/main amd64 libxshmfence1 amd64 1.2-1 [5042 B]\n",
      "Get:4 http://archive.ubuntu.com/ubuntu xenial/main amd64 libxxf86vm1 amd64 1:1.1.4-1 [10.6 kB]\n",
      "Get:5 http://archive.ubuntu.com/ubuntu xenial/main amd64 libtxc-dxtn-s2tc0 amd64 0~git20131104-1.1 [51.8 kB]\n",
      "Get:6 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 zlib1g amd64 1:1.2.8.dfsg-2ubuntu4.3 [51.2 kB]\n",
      "Get:7 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libdrm-common all 2.4.91-2~16.04.1 [4764 B]\n",
      "Get:8 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libdrm2 amd64 2.4.91-2~16.04.1 [30.8 kB]\n",
      "Get:9 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libelf1 amd64 0.165-3ubuntu1.2 [43.5 kB]\n",
      "Get:10 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libdrm-amdgpu1 amd64 2.4.91-2~16.04.1 [18.9 kB]\n",
      "Get:11 http://archive.ubuntu.com/ubuntu xenial/main amd64 libpciaccess0 amd64 0.13.4-1 [18.1 kB]\n",
      "Get:12 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libdrm-intel1 amd64 2.4.91-2~16.04.1 [59.9 kB]\n",
      "Get:13 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libdrm-nouveau2 amd64 2.4.91-2~16.04.1 [16.3 kB]\n",
      "Get:14 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libdrm-radeon1 amd64 2.4.91-2~16.04.1 [21.5 kB]\n",
      "Get:15 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libglapi-mesa amd64 18.0.5-0ubuntu0~16.04.1 [23.4 kB]\n",
      "Get:16 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libllvm6.0 amd64 1:6.0-1ubuntu2~16.04.1 [14.3 MB]\n",
      "Get:17 http://archive.ubuntu.com/ubuntu xenial/main amd64 libsensors4 amd64 1:3.4.0-2 [28.4 kB]\n",
      "Get:18 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libgl1-mesa-dri amd64 18.0.5-0ubuntu0~16.04.1 [6080 kB]\n",
      "Get:19 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libx11-xcb1 amd64 2:1.6.3-1ubuntu2.1 [9044 B]\n",
      "Get:20 http://archive.ubuntu.com/ubuntu xenial/main amd64 libxcb-dri2-0 amd64 1.11.1-1ubuntu1 [6882 B]\n",
      "Get:21 http://archive.ubuntu.com/ubuntu xenial/main amd64 libxcb-dri3-0 amd64 1.11.1-1ubuntu1 [5218 B]\n",
      "Get:22 http://archive.ubuntu.com/ubuntu xenial/main amd64 libxcb-glx0 amd64 1.11.1-1ubuntu1 [20.9 kB]\n",
      "Get:23 http://archive.ubuntu.com/ubuntu xenial/main amd64 libxcb-present0 amd64 1.11.1-1ubuntu1 [5218 B]\n",
      "Get:24 http://archive.ubuntu.com/ubuntu xenial/main amd64 libxcb-sync1 amd64 1.11.1-1ubuntu1 [8324 B]\n",
      "Get:25 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libgl1-mesa-glx amd64 18.0.5-0ubuntu0~16.04.1 [132 kB]\n",
      "Get:26 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 zlib1g-dev amd64 1:1.2.8.dfsg-2ubuntu4.3 [167 kB]\n",
      "Get:27 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libssl-dev amd64 1.0.2g-1ubuntu4.15 [1344 kB]\n",
      "Get:28 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libssl-doc all 1.0.2g-1ubuntu4.15 [1077 kB]\n",
      "\u001b[91mdebconf: delaying package configuration, since apt-utils is not installed\n",
      "\u001b[0mFetched 23.5 MB in 1s (17.2 MB/s)\n",
      "Selecting previously unselected package libxdamage1:amd64.\n",
      "(Reading database ... \n",
      "(Reading database ... 5%\n",
      "(Reading database ... 10%\n",
      "(Reading database ... 15%\n",
      "(Reading database ... 20%\n",
      "(Reading database ... 25%\n",
      "(Reading database ... 30%\n",
      "(Reading database ... 35%\n",
      "(Reading database ... 40%\n",
      "(Reading database ... 45%\n",
      "(Reading database ... 50%\n",
      "(Reading database ... 55%\n",
      "(Reading database ... 60%\n",
      "(Reading database ... 65%\n",
      "(Reading database ... 70%\n",
      "(Reading database ... 75%\n",
      "(Reading database ... 80%\n",
      "(Reading database ... 85%\n",
      "(Reading database ... 90%\n",
      "(Reading database ... 95%\n",
      "(Reading database ... 100%\n",
      "(Reading database ... 17863 files and directories currently installed.)\n",
      "\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Preparing to unpack .../libxdamage1_1%3a1.1.4-2_amd64.deb ...\n",
      "Unpacking libxdamage1:amd64 (1:1.1.4-2) ...\n",
      "Selecting previously unselected package libxfixes3:amd64.\n",
      "Preparing to unpack .../libxfixes3_1%3a5.0.1-2_amd64.deb ...\n",
      "Unpacking libxfixes3:amd64 (1:5.0.1-2) ...\n",
      "Selecting previously unselected package libxshmfence1:amd64.\n",
      "Preparing to unpack .../libxshmfence1_1.2-1_amd64.deb ...\n",
      "Unpacking libxshmfence1:amd64 (1.2-1) ...\n",
      "Selecting previously unselected package libxxf86vm1:amd64.\n",
      "Preparing to unpack .../libxxf86vm1_1%3a1.1.4-1_amd64.deb ...\n",
      "Unpacking libxxf86vm1:amd64 (1:1.1.4-1) ...\n",
      "Selecting previously unselected package libtxc-dxtn-s2tc0:amd64.\n",
      "Preparing to unpack .../libtxc-dxtn-s2tc0_0~git20131104-1.1_amd64.deb ...\n",
      "Unpacking libtxc-dxtn-s2tc0:amd64 (0~git20131104-1.1) ...\n",
      "Preparing to unpack .../zlib1g_1%3a1.2.8.dfsg-2ubuntu4.3_amd64.deb ...\n",
      "Unpacking zlib1g:amd64 (1:1.2.8.dfsg-2ubuntu4.3) over (1:1.2.8.dfsg-2ubuntu4.1) ...\n",
      "Processing triggers for libc-bin (2.23-0ubuntu11) ...\n",
      "Setting up zlib1g:amd64 (1:1.2.8.dfsg-2ubuntu4.3) ...\n",
      "Processing triggers for libc-bin (2.23-0ubuntu11) ...\n",
      "Selecting previously unselected package libdrm-common.\n",
      "(Reading database ... \n",
      "(Reading database ... 5%\n",
      "(Reading database ... 10%\n",
      "(Reading database ... 15%\n",
      "(Reading database ... 20%\n",
      "(Reading database ... 25%\n",
      "(Reading database ... 30%\n",
      "(Reading database ... 35%\n",
      "(Reading database ... 40%\n",
      "(Reading database ... 45%\n",
      "(Reading database ... 50%\n",
      "(Reading database ... 55%\n",
      "(Reading database ... 60%\n",
      "(Reading database ... 65%\n",
      "(Reading database ... 70%\n",
      "(Reading database ... 75%\n",
      "(Reading database ... 80%\n",
      "(Reading database ... 85%\n",
      "(Reading database ... 90%\n",
      "(Reading database ... 95%\n",
      "(Reading database ... 100%\n",
      "(Reading database ... 17889 files and directories currently installed.)\n",
      "Preparing to unpack .../libdrm-common_2.4.91-2~16.04.1_all.deb ...\n",
      "Unpacking libdrm-common (2.4.91-2~16.04.1) ...\n",
      "Selecting previously unselected package libdrm2:amd64.\n",
      "Preparing to unpack .../libdrm2_2.4.91-2~16.04.1_amd64.deb ...\n",
      "Unpacking libdrm2:amd64 (2.4.91-2~16.04.1) ...\n",
      "Selecting previously unselected package libelf1:amd64.\n",
      "Preparing to unpack .../libelf1_0.165-3ubuntu1.2_amd64.deb ...\n",
      "Unpacking libelf1:amd64 (0.165-3ubuntu1.2) ...\n",
      "Selecting previously unselected package libdrm-amdgpu1:amd64.\n",
      "Preparing to unpack .../libdrm-amdgpu1_2.4.91-2~16.04.1_amd64.deb ...\n",
      "Unpacking libdrm-amdgpu1:amd64 (2.4.91-2~16.04.1) ...\n",
      "Selecting previously unselected package libpciaccess0:amd64.\n",
      "Preparing to unpack .../libpciaccess0_0.13.4-1_amd64.deb ...\n",
      "Unpacking libpciaccess0:amd64 (0.13.4-1) ...\n",
      "Selecting previously unselected package libdrm-intel1:amd64.\n",
      "Preparing to unpack .../libdrm-intel1_2.4.91-2~16.04.1_amd64.deb ...\n",
      "Unpacking libdrm-intel1:amd64 (2.4.91-2~16.04.1) ...\n",
      "Selecting previously unselected package libdrm-nouveau2:amd64.\n",
      "\n",
      "Preparing to unpack .../libdrm-nouveau2_2.4.91-2~16.04.1_amd64.deb ...\n",
      "Unpacking libdrm-nouveau2:amd64 (2.4.91-2~16.04.1) ...\n",
      "Selecting previously unselected package libdrm-radeon1:amd64.\n",
      "Preparing to unpack .../libdrm-radeon1_2.4.91-2~16.04.1_amd64.deb ...\n",
      "Unpacking libdrm-radeon1:amd64 (2.4.91-2~16.04.1) ...\n",
      "Selecting previously unselected package libglapi-mesa:amd64.\n",
      "Preparing to unpack .../libglapi-mesa_18.0.5-0ubuntu0~16.04.1_amd64.deb ...\n",
      "Unpacking libglapi-mesa:amd64 (18.0.5-0ubuntu0~16.04.1) ...\n",
      "Selecting previously unselected package libllvm6.0:amd64.\n",
      "Preparing to unpack .../libllvm6.0_1%3a6.0-1ubuntu2~16.04.1_amd64.deb ...\n",
      "Unpacking libllvm6.0:amd64 (1:6.0-1ubuntu2~16.04.1) ...\n",
      "Selecting previously unselected package libsensors4:amd64.\n",
      "\n",
      "Preparing to unpack .../libsensors4_1%3a3.4.0-2_amd64.deb ...\n",
      "Unpacking libsensors4:amd64 (1:3.4.0-2) ...\n",
      "Selecting previously unselected package libgl1-mesa-dri:amd64.\n",
      "Preparing to unpack .../libgl1-mesa-dri_18.0.5-0ubuntu0~16.04.1_amd64.deb ...\n",
      "Unpacking libgl1-mesa-dri:amd64 (18.0.5-0ubuntu0~16.04.1) ...\n",
      "Selecting previously unselected package libx11-xcb1:amd64.\n",
      "Preparing to unpack .../libx11-xcb1_2%3a1.6.3-1ubuntu2.1_amd64.deb ...\n",
      "Unpacking libx11-xcb1:amd64 (2:1.6.3-1ubuntu2.1) ...\n",
      "Selecting previously unselected package libxcb-dri2-0:amd64.\n",
      "Preparing to unpack .../libxcb-dri2-0_1.11.1-1ubuntu1_amd64.deb ...\n",
      "Unpacking libxcb-dri2-0:amd64 (1.11.1-1ubuntu1) ...\n",
      "Selecting previously unselected package libxcb-dri3-0:amd64.\n",
      "Preparing to unpack .../libxcb-dri3-0_1.11.1-1ubuntu1_amd64.deb ...\n",
      "Unpacking libxcb-dri3-0:amd64 (1.11.1-1ubuntu1) ...\n",
      "Selecting previously unselected package libxcb-glx0:amd64.\n",
      "Preparing to unpack .../libxcb-glx0_1.11.1-1ubuntu1_amd64.deb ...\n",
      "Unpacking libxcb-glx0:amd64 (1.11.1-1ubuntu1) ...\n",
      "Selecting previously unselected package libxcb-present0:amd64.\n",
      "Preparing to unpack .../libxcb-present0_1.11.1-1ubuntu1_amd64.deb ...\n",
      "Unpacking libxcb-present0:amd64 (1.11.1-1ubuntu1) ...\n",
      "Selecting previously unselected package libxcb-sync1:amd64.\n",
      "Preparing to unpack .../libxcb-sync1_1.11.1-1ubuntu1_amd64.deb ...\n",
      "Unpacking libxcb-sync1:amd64 (1.11.1-1ubuntu1) ...\n",
      "Selecting previously unselected package libgl1-mesa-glx:amd64.\n",
      "Preparing to unpack .../libgl1-mesa-glx_18.0.5-0ubuntu0~16.04.1_amd64.deb ...\n",
      "Unpacking libgl1-mesa-glx:amd64 (18.0.5-0ubuntu0~16.04.1) ...\n",
      "\n",
      "Selecting previously unselected package zlib1g-dev:amd64.\n",
      "Preparing to unpack .../zlib1g-dev_1%3a1.2.8.dfsg-2ubuntu4.3_amd64.deb ...\n",
      "Unpacking zlib1g-dev:amd64 (1:1.2.8.dfsg-2ubuntu4.3) ...\n",
      "Selecting previously unselected package libssl-dev:amd64.\n",
      "Preparing to unpack .../libssl-dev_1.0.2g-1ubuntu4.15_amd64.deb ...\n",
      "Unpacking libssl-dev:amd64 (1.0.2g-1ubuntu4.15) ...\n",
      "Selecting previously unselected package libssl-doc.\n",
      "Preparing to unpack .../libssl-doc_1.0.2g-1ubuntu4.15_all.deb ...\n",
      "Unpacking libssl-doc (1.0.2g-1ubuntu4.15) ...\n",
      "Processing triggers for libc-bin (2.23-0ubuntu11) ...\n",
      "Setting up libxdamage1:amd64 (1:1.1.4-2) ...\n",
      "Setting up libxfixes3:amd64 (1:5.0.1-2) ...\n",
      "Setting up libxshmfence1:amd64 (1.2-1) ...\n",
      "Setting up libxxf86vm1:amd64 (1:1.1.4-1) ...\n",
      "Setting up libtxc-dxtn-s2tc0:amd64 (0~git20131104-1.1) ...\n",
      "update-alternatives: using /usr/lib/x86_64-linux-gnu/libtxc_dxtn_s2tc.so.0 to provide /usr/lib/x86_64-linux-gnu/libtxc_dxtn.so (libtxc-dxtn-x86_64-linux-gnu) in auto mode\n",
      "Setting up libdrm-common (2.4.91-2~16.04.1) ...\n",
      "Setting up libdrm2:amd64 (2.4.91-2~16.04.1) ...\n",
      "Setting up libelf1:amd64 (0.165-3ubuntu1.2) ...\n",
      "Setting up libdrm-amdgpu1:amd64 (2.4.91-2~16.04.1) ...\n",
      "Setting up libpciaccess0:amd64 (0.13.4-1) ...\n",
      "Setting up libdrm-intel1:amd64 (2.4.91-2~16.04.1) ...\n",
      "Setting up libdrm-nouveau2:amd64 (2.4.91-2~16.04.1) ...\n",
      "Setting up libdrm-radeon1:amd64 (2.4.91-2~16.04.1) ...\n",
      "Setting up libglapi-mesa:amd64 (18.0.5-0ubuntu0~16.04.1) ...\n",
      "Setting up libllvm6.0:amd64 (1:6.0-1ubuntu2~16.04.1) ...\n",
      "Setting up libsensors4:amd64 (1:3.4.0-2) ...\n",
      "Setting up libgl1-mesa-dri:amd64 (18.0.5-0ubuntu0~16.04.1) ...\n",
      "Setting up libx11-xcb1:amd64 (2:1.6.3-1ubuntu2.1) ...\n",
      "Setting up libxcb-dri2-0:amd64 (1.11.1-1ubuntu1) ...\n",
      "\n",
      "Setting up libxcb-dri3-0:amd64 (1.11.1-1ubuntu1) ...\n",
      "Setting up libxcb-glx0:amd64 (1.11.1-1ubuntu1) ...\n",
      "Setting up libxcb-present0:amd64 (1.11.1-1ubuntu1) ...\n",
      "Setting up libxcb-sync1:amd64 (1.11.1-1ubuntu1) ...\n",
      "Setting up libgl1-mesa-glx:amd64 (18.0.5-0ubuntu0~16.04.1) ...\n",
      "update-alternatives: using /usr/lib/x86_64-linux-gnu/mesa/ld.so.conf to provide /etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf (x86_64-linux-gnu_gl_conf) in auto mode\n",
      "Setting up zlib1g-dev:amd64 (1:1.2.8.dfsg-2ubuntu4.3) ...\n",
      "Setting up libssl-dev:amd64 (1.0.2g-1ubuntu4.15) ...\n",
      "Setting up libssl-doc (1.0.2g-1ubuntu4.15) ...\n",
      "Processing triggers for libc-bin (2.23-0ubuntu11) ...\n",
      "Removing intermediate container 9fd23d97599d\n",
      " ---> 16b7bf8dda16\n",
      "Step 4/22 : USER root\n",
      " ---> Running in 8daa09df465a\n",
      "Removing intermediate container 8daa09df465a\n",
      " ---> bc88c429f63a\n",
      "Step 5/22 : RUN mkdir -p $HOME/.cache\n",
      " ---> Running in cc0440374190\n",
      "Removing intermediate container cc0440374190\n",
      " ---> 01e74db48950\n",
      "Step 6/22 : WORKDIR /\n",
      " ---> Running in 0584cdeb02d1\n",
      "Removing intermediate container 0584cdeb02d1\n",
      " ---> 4e747421c053\n",
      "Step 7/22 : COPY azureml-environment-setup/99brokenproxy /etc/apt/apt.conf.d/\n",
      " ---> 7e187040d634\n",
      "Step 8/22 : COPY --from=inferencing-assets /artifacts /var/\n",
      " ---> 5da008640a78\n",
      "Step 9/22 : RUN /var/requirements/install_system_requirements.sh\n",
      " ---> Running in 6335cbc173b2\n",
      "Hit:1 http://security.ubuntu.com/ubuntu xenial-security InRelease\n",
      "Hit:2 http://ppa.launchpad.net/adiscon/v8-stable/ubuntu xenial InRelease\n",
      "Hit:3 http://archive.ubuntu.com/ubuntu xenial InRelease\n",
      "Hit:4 http://archive.ubuntu.com/ubuntu xenial-updates InRelease\n",
      "Hit:5 http://archive.ubuntu.com/ubuntu xenial-backports InRelease\n",
      "Reading package lists...\n",
      "Reading package lists...\n",
      "Building dependency tree...\n",
      "Reading state information...\n",
      "The following NEW packages will be installed:\n",
      "  software-properties-common\n",
      "0 upgraded, 1 newly installed, 0 to remove and 62 not upgraded.\n",
      "Need to get 9452 B of archives.\n",
      "After this operation, 193 kB of additional disk space will be used.\n",
      "Get:1 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 software-properties-common all 0.96.20.9 [9452 B]\n",
      "\u001b[91mdebconf: delaying package configuration, since apt-utils is not installed\n",
      "\u001b[0mFetched 9452 B in 0s (37.4 kB/s)\n",
      "Selecting previously unselected package software-properties-common.\n",
      "(Reading database ... \n",
      "(Reading database ... 5%\n",
      "(Reading database ... 10%\n",
      "(Reading database ... 15%\n",
      "(Reading database ... 20%\n",
      "(Reading database ... 25%\n",
      "(Reading database ... 30%\n",
      "(Reading database ... 35%\n",
      "(Reading database ... 40%\n",
      "(Reading database ... 45%\n",
      "(Reading database ... 50%\n",
      "(Reading database ... 55%\n",
      "(Reading database ... 60%\n",
      "(Reading database ... 65%\n",
      "(Reading database ... 70%\n",
      "(Reading database ... 75%\n",
      "(Reading database ... 80%\n",
      "(Reading database ... 85%\n",
      "(Reading database ... 90%\n",
      "(Reading database ... 95%\n",
      "(Reading database ... 100%\n",
      "(Reading database ... 19812 files and directories currently installed.)\n",
      "Preparing to unpack .../software-properties-common_0.96.20.9_all.deb ...\n",
      "Unpacking software-properties-common (0.96.20.9) ...\n",
      "Processing triggers for dbus (1.10.6-1ubuntu3.4) ...\n",
      "\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Setting up software-properties-common (0.96.20.9) ...\n",
      "Processing triggers for dbus (1.10.6-1ubuntu3.4) ...\n",
      "\u001b[91mgpg: keyring `/tmp/tmpvhm3l443/secring.gpg' created\n",
      "\u001b[0m\u001b[91mgpg: \u001b[0m\u001b[91mkeyring `/tmp/tmpvhm3l443/pubring.gpg' created\n",
      "\u001b[0m\u001b[91mgpg: requesting key 5234BF2B from hkp server keyserver.ubuntu.com\n",
      "\u001b[0m\u001b[91mgpg: /tmp/tmpvhm3l443/trustdb.gpg: trustdb created\n",
      "\u001b[0m\u001b[91mgpg: key 5234BF2B: public key \"Launchpad PPA for Adiscon\" imported\n",
      "gpg: Total number processed: 1\n",
      "gpg:               imported: 1  (RSA: 1)\n",
      "\u001b[0mOK\n",
      "Reading package lists...\n",
      "Building dependency tree...\n",
      "Reading state information...\n",
      "The following packages were automatically installed and are no longer required:\n",
      "  dh-python distro-info-data file gir1.2-glib-2.0 iso-codes libapt-inst2.0\n",
      "  libdbus-glib-1-2 libgirepository-1.0-1 libmagic1 libmpdec2 libpython3-stdlib\n",
      "  libpython3.5-minimal libpython3.5-stdlib lsb-release mime-support\n",
      "  powermgmt-base python-apt-common python3 python3-apt python3-dbus python3-gi\n",
      "  python3-minimal python3-pycurl python3-software-properties python3.5\n",
      "  python3.5-minimal unattended-upgrades\n",
      "Use 'apt autoremove' to remove them.\n",
      "The following packages will be REMOVED:\n",
      "  software-properties-common*\n",
      "0 upgraded, 0 newly installed, 1 to remove and 62 not upgraded.\n",
      "After this operation, 193 kB disk space will be freed.\n",
      "(Reading database ... \n",
      "(Reading database ... 5%\n",
      "(Reading database ... 10%\n",
      "(Reading database ... 15%\n",
      "(Reading database ... 20%\n",
      "(Reading database ... 25%\n",
      "(Reading database ... 30%\n",
      "(Reading database ... 35%\n",
      "(Reading database ... 40%\n",
      "(Reading database ... 45%\n",
      "(Reading database ... 50%\n",
      "(Reading database ... 55%\n",
      "(Reading database ... 60%\n",
      "(Reading database ... 65%\n",
      "(Reading database ... 70%\n",
      "(Reading database ... 75%\n",
      "(Reading database ... 80%\n",
      "(Reading database ... 85%\n",
      "(Reading database ... 90%\n",
      "(Reading database ... 95%\n",
      "(Reading database ... 100%\n",
      "(Reading database ... 19827 files and directories currently installed.)\n",
      "Removing software-properties-common (0.96.20.9) ...\n",
      "Purging configuration files for software-properties-common (0.96.20.9) ...\n",
      "\n",
      "Processing triggers for dbus (1.10.6-1ubuntu3.4) ...\n",
      "Hit:1 http://security.ubuntu.com/ubuntu xenial-security InRelease\n",
      "Hit:2 http://ppa.launchpad.net/adiscon/v8-stable/ubuntu xenial InRelease\n",
      "Hit:3 http://archive.ubuntu.com/ubuntu xenial InRelease\n",
      "Hit:4 http://archive.ubuntu.com/ubuntu xenial-updates InRelease\n",
      "Hit:5 http://archive.ubuntu.com/ubuntu xenial-backports InRelease\n",
      "Reading package lists...\n",
      "Reading package lists...\n",
      "Building dependency tree...\n",
      "Reading state information...\n",
      "libunwind8 is already the newest version (1.1-4.1).\n",
      "unzip is already the newest version (6.0-20ubuntu1).\n",
      "liblttng-ust0 is already the newest version (2.7.1-1).\n",
      "libxml++2.6-2v5 is already the newest version (2.40.1-1).\n",
      "runit is already the newest version (2.1.2-3ubuntu1).\n",
      "libcurl3 is already the newest version (7.47.0-1ubuntu2.14).\n",
      "psmisc is already the newest version (22.21-2.1ubuntu0.1).\n",
      "wget is already the newest version (1.17.1-1ubuntu1.5).\n",
      "The following packages were automatically installed and are no longer required:\n",
      "  dh-python distro-info-data file gir1.2-glib-2.0 iso-codes libapt-inst2.0\n",
      "  libdbus-glib-1-2 libgirepository-1.0-1 libmagic1 libmpdec2 libpython3-stdlib\n",
      "  libpython3.5-minimal libpython3.5-stdlib lsb-release mime-support\n",
      "  powermgmt-base python-apt-common python3 python3-apt python3-dbus python3-gi\n",
      "  python3-minimal python3-pycurl python3-software-properties python3.5\n",
      "  python3.5-minimal unattended-upgrades\n",
      "Use 'apt autoremove' to remove them.\n",
      "The following additional packages will be installed:\n",
      "  nginx-common\n",
      "Suggested packages:\n",
      "  fcgiwrap nginx-doc ssl-cert rsyslog-mysql | rsyslog-pgsql rsyslog-doc\n",
      "  rsyslog-relp rsyslog-elasticsearch rsyslog-mmjsonparse rsyslog-imptcp\n",
      "  rsyslog-gnutls rsyslog-openssl rsyslog-udpspoof rsyslog-mmrm1stspace\n",
      "  rsyslog-mmutf8fix rsyslog-kafka rsyslog-omstdout apparmor\n",
      "The following packages will be upgraded:\n",
      "  nginx-common nginx-light rsyslog\n",
      "3 upgraded, 0 newly installed, 0 to remove and 59 not upgraded.\n",
      "Need to get 1001 kB of archives.\n",
      "After this operation, 14.3 kB of additional disk space will be used.\n",
      "Get:1 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 nginx-common all 1.10.3-0ubuntu0.16.04.5 [26.9 kB]\n",
      "Get:2 http://ppa.launchpad.net/adiscon/v8-stable/ubuntu xenial/main amd64 rsyslog amd64 8.2002.0-0adiscon1xenial1 [659 kB]\n",
      "Get:3 http://archive.ubuntu.com/ubuntu xenial-updates/universe amd64 nginx-light amd64 1.10.3-0ubuntu0.16.04.5 [315 kB]\n",
      "\u001b[91mdebconf: delaying package configuration, since apt-utils is not installed\n",
      "\u001b[0mFetched 1001 kB in 0s (1420 kB/s)\n",
      "(Reading database ... \n",
      "(Reading database ... 5%\n",
      "(Reading database ... 10%\n",
      "(Reading database ... 15%\n",
      "(Reading database ... 20%\n",
      "(Reading database ... 25%\n",
      "(Reading database ... 30%\n",
      "(Reading database ... 35%\n",
      "(Reading database ... 40%\n",
      "(Reading database ... 45%\n",
      "(Reading database ... 50%\n",
      "(Reading database ... 55%\n",
      "(Reading database ... 60%\n",
      "(Reading database ... 65%\n",
      "(Reading database ... 70%\n",
      "(Reading database ... 75%\n",
      "(Reading database ... 80%\n",
      "(Reading database ... 85%\n",
      "(Reading database ... 90%\n",
      "(Reading database ... 95%\n",
      "(Reading database ... 100%\n",
      "(Reading database ... 19811 files and directories currently installed.)\n",
      "Preparing to unpack .../rsyslog_8.2002.0-0adiscon1xenial1_amd64.deb ...\n",
      "Unpacking rsyslog (8.2002.0-0adiscon1xenial1) over (8.1910.0-0adiscon1xenial1) ...\n",
      "Preparing to unpack .../nginx-common_1.10.3-0ubuntu0.16.04.5_all.deb ...\n",
      "\n",
      "Unpacking nginx-common (1.10.3-0ubuntu0.16.04.5) over (1.10.3-0ubuntu0.16.04.4) ...\n",
      "Preparing to unpack .../nginx-light_1.10.3-0ubuntu0.16.04.5_amd64.deb ...\n",
      "Unpacking nginx-light (1.10.3-0ubuntu0.16.04.5) over (1.10.3-0ubuntu0.16.04.4) ...\n",
      "Processing triggers for systemd (229-4ubuntu21.22) ...\n",
      "Setting up rsyslog (8.2002.0-0adiscon1xenial1) ...\n",
      "invoke-rc.d: could not determine current runlevel\n",
      "invoke-rc.d: policy-rc.d denied execution of restart.\n",
      "Setting up nginx-common (1.10.3-0ubuntu0.16.04.5) ...\n",
      "Setting up nginx-light (1.10.3-0ubuntu0.16.04.5) ...\n",
      "invoke-rc.d: could not determine current runlevel\n",
      "invoke-rc.d: policy-rc.d denied execution of start.\n",
      "Removing intermediate container 6335cbc173b2\n",
      " ---> e32d0930801a\n",
      "Step 10/22 : RUN cp /var/configuration/rsyslog.conf /etc/rsyslog.conf && cp /var/configuration/nginx.conf /etc/nginx/sites-available/app && ln -sf /etc/nginx/sites-available/app /etc/nginx/sites-enabled/app && rm -f /etc/nginx/sites-enabled/default\n",
      " ---> Running in 82ff3cae599d\n",
      "Removing intermediate container 82ff3cae599d\n",
      " ---> 0678c489145a\n",
      "Step 11/22 : ENV SVDIR=/var/runit\n",
      " ---> Running in 4b6464c39ff3\n",
      "Removing intermediate container 4b6464c39ff3\n",
      " ---> ca4081440317\n",
      "Step 12/22 : RUN if dpkg --compare-versions `conda --version | grep -oE '[^ ]+$'` lt 4.4.11; then conda install conda==4.4.11; fi\n",
      " ---> Running in 78f72f98eda4\n",
      "Removing intermediate container 78f72f98eda4\n",
      " ---> e45caa4c9c16\n",
      "Step 13/22 : COPY azureml-environment-setup/mutated_conda_dependencies.yml azureml-environment-setup/mutated_conda_dependencies.yml\n",
      " ---> 1110ada5d507\n",
      "Step 14/22 : RUN ldconfig /usr/local/cuda/lib64/stubs && conda env create -p /azureml-envs/azureml_53f7459b2d11a780edbefaa1f46263fa -f azureml-environment-setup/mutated_conda_dependencies.yml && rm -rf \"$HOME/.cache/pip\" && conda clean -aqy && CONDA_ROOT_DIR=$(conda info --root) && rm -rf \"$CONDA_ROOT_DIR/pkgs\" && find \"$CONDA_ROOT_DIR\" -type d -name __pycache__ -exec rm -rf {} + && ldconfig\n",
      " ---> Running in 1da2c76e922f\n",
      "Solving environment: ...working... \n",
      "done\n",
      "\u001b[91m\n",
      "\n",
      "==> WARNING: A newer version of conda exists. <==\n",
      "  current version: 4.5.11\n",
      "  latest version: 4.8.3\n",
      "\n",
      "Please update conda by running\n",
      "\n",
      "    $ conda update -n base -c defaults conda\n",
      "\n",
      "\n",
      "\n",
      "libxml2-2.9.9        | 1.3 MB    |            |   0% \u001b[0m\u001b[91m\n",
      "libxml2-2.9.9        | 1.3 MB    | ########   |  80% \u001b[0m\u001b[91m\n",
      "libxml2-2.9.9        | 1.3 MB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "requests-2.23.0      | 47 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "requests-2.23.0      | 47 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "_libgcc_mutex-0.1    | 3 KB      |            |   0% \u001b[0m\u001b[91m\n",
      "_libgcc_mutex-0.1    | 3 KB      | #######5   |  75% \u001b[0m\u001b[91m\n",
      "_libgcc_mutex-0.1    | 3 KB      | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "pyqt-5.6.0           | 5.4 MB    |            |   0% \u001b[0m\u001b[91m\n",
      "pyqt-5.6.0           | 5.4 MB    | ###3       |  34% \u001b[0m\u001b[91m\n",
      "pyqt-5.6.0           | 5.4 MB    | #######6   |  76% \u001b[0m\u001b[91m\n",
      "pyqt-5.6.0           | 5.4 MB    | #########5 |  96% \u001b[0m\u001b[91m\n",
      "pyqt-5.6.0           | 5.4 MB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "ncurses-6.0          | 920 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "ncurses-6.0          | 920 KB    | #######9   |  79% \u001b[0m\u001b[91m\n",
      "ncurses-6.0          | 920 KB    | ########9  |  90% \u001b[0m\u001b[91m\n",
      "ncurses-6.0          | 920 KB    | #########9 | 100% \u001b[0m\u001b[91m\n",
      "ncurses-6.0          | 920 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "packaging-20.1       | 31 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "packaging-20.1       | 31 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "zstd-1.4.4           | 982 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "zstd-1.4.4           | 982 KB    | ########3  |  84% \u001b[0m\u001b[91m\n",
      "zstd-1.4.4           | 982 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "wasabi-0.6.0         | 20 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "wasabi-0.6.0         | 20 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "python-dateutil-2.8. | 220 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "python-dateutil-2.8. | 220 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "cycler-0.10.0        | 9 KB      |            |   0% \u001b[0m\u001b[91m\n",
      "cycler-0.10.0        | 9 KB      | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "attrs-19.3.0         | 35 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "attrs-19.3.0         | 35 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "llvm-openmp-9.0.1    | 782 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "llvm-openmp-9.0.1    | 782 KB    | ########6  |  86% \u001b[0m\u001b[91m\n",
      "llvm-openmp-9.0.1    | 782 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "libwebp-base-1.1.0   | 845 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "libwebp-base-1.1.0   | 845 KB    | ########5  |  85% \u001b[0m\u001b[91m\n",
      "libwebp-base-1.1.0   | 845 KB    | ########## | 100% \u001b[0m\u001b[91m\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "preshed-3.0.2        | 122 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "preshed-3.0.2        | 122 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "cymem-2.0.3          | 41 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "cymem-2.0.3          | 41 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "jsonschema-3.2.0     | 89 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "jsonschema-3.2.0     | 89 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "fastai-1.0.57        | 173 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "fastai-1.0.57        | 173 KB    | 6          |   7% \u001b[0m\u001b[91m\n",
      "fastai-1.0.57        | 173 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "cudatoolkit-10.0.130 | 380.0 MB  |            |   0% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  |            |   0% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | 1          |   2% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | 3          |   3% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | 5          |   5% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | 6          |   7% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | 8          |   9% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #          |  11% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #2         |  13% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #4         |  15% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #6         |  16% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #8         |  18% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ##         |  20% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ##2        |  22% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ##4        |  24% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ##5        |  26% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ##7        |  28% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ##9        |  30% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ###1       |  32% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ###3       |  34% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ###5       |  36% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ###7       |  38% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ###9       |  40% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ####1      |  42% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ####3      |  44% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ####5      |  46% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ####7      |  48% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ####9      |  50% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #####1     |  52% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #####4     |  54% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #####6     |  56% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #####8     |  58% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ######     |  60% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ######2    |  62% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ######3    |  64% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ######5    |  66% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ######7    |  68% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ######9    |  70% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #######1   |  72% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #######3   |  74% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #######5   |  76% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #######7   |  77% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #######8   |  78% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #######8   |  79% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #######9   |  80% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #######9   |  80% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########   |  80% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########   |  80% \u001b[0m\n",
      "\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########   |  81% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########   |  81% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########   |  81% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########   |  81% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########   |  81% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########   |  81% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########1  |  81% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########1  |  81% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########1  |  81% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########1  |  81% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########1  |  81% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########1  |  81% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########1  |  81% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########1  |  81% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########1  |  81% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########1  |  81% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########1  |  82% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########1  |  82% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########1  |  82% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########1  |  82% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########1  |  82% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########1  |  82% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########1  |  82% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########1  |  82% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########1  |  82% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########1  |  82% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########2  |  82% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########2  |  82% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########2  |  82% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########2  |  82% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########2  |  82% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########2  |  82% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########2  |  82% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########2  |  82% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########2  |  82% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########2  |  82% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########2  |  82% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########2  |  82% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########2  |  83% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########2  |  83% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########2  |  83% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########2  |  83% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########2  |  83% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########2  |  83% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########2  |  83% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########2  |  83% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########2  |  83% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########2  |  83% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########2  |  83% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########4  |  85% \u001b[0m\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########9  |  89% \u001b[0m\n",
      "\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  94% \u001b[0m\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  97% \u001b[0m\n",
      "\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "cudatoolkit-10.0.130 | 380.0 MB  | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "numpy-1.18.1         | 5 KB      |            |   0% \u001b[0m\u001b[91m\n",
      "numpy-1.18.1         | 5 KB      | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "importlib_metadata-1 | 3 KB      |            |   0% \u001b[0m\u001b[91m\n",
      "importlib_metadata-1 | 3 KB      | #######5   |  75% \u001b[0m\u001b[91m\n",
      "importlib_metadata-1 | 3 KB      | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "pysocks-1.7.1        | 27 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "pysocks-1.7.1        | 27 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "libiconv-1.15        | 2.0 MB    |            |   0% \u001b[0m\u001b[91m\n",
      "libiconv-1.15        | 2.0 MB    | #######8   |  79% \u001b[0m\u001b[91m\n",
      "libiconv-1.15        | 2.0 MB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "cryptography-2.5     | 645 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "cryptography-2.5     | 645 KB    | ########   |  81% \u001b[0m\u001b[91m\n",
      "cryptography-2.5     | 645 KB    | #########8 |  98% \u001b[0m\u001b[91m\n",
      "cryptography-2.5     | 645 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "gettext-0.19.8.1     | 3.6 MB    |            |   0% \u001b[0m\u001b[91m\n",
      "gettext-0.19.8.1     | 3.6 MB    | #######6   |  76% \u001b[0m\u001b[91m\n",
      "gettext-0.19.8.1     | 3.6 MB    | #########8 |  99% \u001b[0m\u001b[91m\n",
      "gettext-0.19.8.1     | 3.6 MB    | ########## | 100% \u001b[0m\u001b[91m\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "chardet-3.0.4        | 188 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "chardet-3.0.4        | 188 KB    | #########7 |  97% \u001b[0m\u001b[91m\n",
      "chardet-3.0.4        | 188 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "tornado-6.0.4        | 639 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "tornado-6.0.4        | 639 KB    | ########1  |  82% \u001b[0m\u001b[91m\n",
      "tornado-6.0.4        | 639 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "fontconfig-2.13.0    | 284 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "fontconfig-2.13.0    | 284 KB    | #########6 |  96% \u001b[0m\u001b[91m\n",
      "fontconfig-2.13.0    | 284 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "ca-certificates-2020 | 146 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "ca-certificates-2020 | 146 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "pip-20.0.2           | 1.0 MB    |            |   0% \u001b[0m\u001b[91m\n",
      "pip-20.0.2           | 1.0 MB    | #######9   |  80% \u001b[0m\u001b[91m\n",
      "pip-20.0.2           | 1.0 MB    | #########2 |  93% \u001b[0m\u001b[91m\n",
      "pip-20.0.2           | 1.0 MB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "fastprogress-0.2.3   | 15 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "fastprogress-0.2.3   | 15 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "libtiff-4.1.0        | 668 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "libtiff-4.1.0        | 668 KB    | ########7  |  87% \u001b[0m\u001b[91m\n",
      "libtiff-4.1.0        | 668 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "matplotlib-2.2.2     | 6.6 MB    |            |   0% \u001b[0m\u001b[91m\n",
      "matplotlib-2.2.2     | 6.6 MB    | #######5   |  75% \u001b[0m\u001b[91m\n",
      "matplotlib-2.2.2     | 6.6 MB    | #########7 |  98% \u001b[0m\u001b[91m\n",
      "matplotlib-2.2.2     | 6.6 MB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "jpeg-9c              | 251 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "jpeg-9c              | 251 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "pcre-8.44            | 261 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "pcre-8.44            | 261 KB    | #########8 |  99% \u001b[0m\u001b[91m\n",
      "pcre-8.44            | 261 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "sip-4.18.1           | 277 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "sip-4.18.1           | 277 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "idna-2.9             | 52 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "idna-2.9             | 52 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "wheel-0.34.2         | 24 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "wheel-0.34.2         | 24 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "six-1.14.0           | 13 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "six-1.14.0           | 13 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "tqdm-4.45.0          | 48 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "tqdm-4.45.0          | 48 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "pytorch-1.2.0        | 302.3 MB  |            |   0% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  |            |   1% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | 2          |   3% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | 4          |   5% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | 7          |   7% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | 9          |  10% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #2         |  12% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #4         |  15% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #7         |  17% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #9         |  19% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ##1        |  22% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ##3        |  24% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ##6        |  26% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ##8        |  29% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ###        |  31% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ###2       |  33% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ###5       |  35% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ###7       |  37% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ###9       |  39% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ####1      |  42% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ####3      |  44% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ####5      |  46% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ####7      |  48% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ####9      |  50% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #####1     |  52% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #####4     |  54% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #####6     |  57% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #####9     |  59% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ######1    |  62% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ######3    |  64% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ######6    |  66% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ######8    |  68% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #######    |  71% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #######2   |  73% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #######5   |  75% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #######7   |  77% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #######8   |  79% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #######9   |  80% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########   |  80% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########   |  81% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########1  |  81% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########1  |  82% \u001b[0m\n",
      "\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########1  |  82% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########2  |  82% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########2  |  82% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########2  |  82% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########2  |  82% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########2  |  83% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########2  |  83% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########2  |  83% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########2  |  83% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########2  |  83% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########2  |  83% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########2  |  83% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########8  |  88% \u001b[0m\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########4 |  94% \u001b[0m\n",
      "\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########9 | 100% \u001b[0m\n",
      "\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "pytorch-1.2.0        | 302.3 MB  | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "thinc-7.3.0          | 1.7 MB    |            |   0% \u001b[0m\u001b[91m\n",
      "thinc-7.3.0          | 1.7 MB    | #######7   |  78% \u001b[0m\u001b[91m\n",
      "thinc-7.3.0          | 1.7 MB    | ########9  |  90% \u001b[0m\u001b[91m\n",
      "thinc-7.3.0          | 1.7 MB    | #########9 |  99% \u001b[0m\u001b[91m\n",
      "thinc-7.3.0          | 1.7 MB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "zlib-1.2.11          | 105 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "zlib-1.2.11          | 105 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "dataclasses-0.7      | 28 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "dataclasses-0.7      | 28 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "olefile-0.46         | 31 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "olefile-0.46         | 31 KB     | ########## | 100% \u001b[0m\u001b[91m\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "pandas-1.0.3         | 11.1 MB   |            |   0% \u001b[0m\u001b[91m\n",
      "pandas-1.0.3         | 11.1 MB   | ###5       |  36% \u001b[0m\u001b[91m\n",
      "pandas-1.0.3         | 11.1 MB   | #######5   |  75% \u001b[0m\u001b[91m\n",
      "pandas-1.0.3         | 11.1 MB   | #########4 |  95% \u001b[0m\u001b[91m\n",
      "pandas-1.0.3         | 11.1 MB   | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "mkl_random-1.1.0     | 366 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "mkl_random-1.1.0     | 366 KB    | #########6 |  96% \u001b[0m\u001b[91m\n",
      "mkl_random-1.1.0     | 366 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "cffi-1.14.0          | 221 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "cffi-1.14.0          | 221 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "tk-8.6.10            | 3.2 MB    |            |   0% \u001b[0m\u001b[91m\n",
      "tk-8.6.10            | 3.2 MB    | #######6   |  77% \u001b[0m\u001b[91m\n",
      "tk-8.6.10            | 3.2 MB    | #########1 |  92% \u001b[0m\u001b[91m\n",
      "tk-8.6.10            | 3.2 MB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "ninja-1.10.0         | 1.9 MB    |            |   0% \u001b[0m\u001b[91m\n",
      "ninja-1.10.0         | 1.9 MB    | ########   |  81% \u001b[0m\u001b[91m\n",
      "ninja-1.10.0         | 1.9 MB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "icu-58.2             | 22.6 MB   |            |   0% \u001b[0m\u001b[91m\n",
      "icu-58.2             | 22.6 MB   | #5         |  16% \u001b[0m\u001b[91m\n",
      "icu-58.2             | 22.6 MB   | ###8       |  39% \u001b[0m\u001b[91m\n",
      "icu-58.2             | 22.6 MB   | ######     |  61% \u001b[0m\u001b[91m\n",
      "icu-58.2             | 22.6 MB   | #######5   |  75% \u001b[0m\u001b[91m\n",
      "icu-58.2             | 22.6 MB   | ########8  |  89% \u001b[0m\u001b[91m\n",
      "icu-58.2             | 22.6 MB   | #########8 |  98% \u001b[0m\u001b[91m\n",
      "icu-58.2             | 22.6 MB   | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "urllib3-1.25.7       | 160 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "urllib3-1.25.7       | 160 KB    | 7          |   8% \u001b[0m\u001b[91m\n",
      "urllib3-1.25.7       | 160 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "freetype-2.8.1       | 789 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "freetype-2.8.1       | 789 KB    | ########   |  81% \u001b[0m\u001b[91m\n",
      "freetype-2.8.1       | 789 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "importlib-metadata-1 | 43 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "importlib-metadata-1 | 43 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "srsly-1.0.0          | 213 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "srsly-1.0.0          | 213 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "catalogue-1.0.0      | 10 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "catalogue-1.0.0      | 10 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "certifi-2020.4.5.1   | 151 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "certifi-2020.4.5.1   | 151 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "pyrsistent-0.16.0    | 89 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "pyrsistent-0.16.0    | 89 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "openssl-1.0.2u       | 3.2 MB    |            |   0% \u001b[0m\u001b[91m\n",
      "openssl-1.0.2u       | 3.2 MB    | #######6   |  76% \u001b[0m\u001b[91m\n",
      "openssl-1.0.2u       | 3.2 MB    | #########3 |  94% \u001b[0m\u001b[91m\n",
      "openssl-1.0.2u       | 3.2 MB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "pillow-5.2.0         | 1005 KB   |            |   0% \u001b[0m\u001b[91m\n",
      "pillow-5.2.0         | 1005 KB   | ########   |  81% \u001b[0m\u001b[91m\n",
      "pillow-5.2.0         | 1005 KB   | #########6 |  96% \u001b[0m\u001b[91m\n",
      "pillow-5.2.0         | 1005 KB   | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "blas-1.0             | 6 KB      |            |   0% \u001b[0m\u001b[91m\n",
      "blas-1.0             | 6 KB      | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "xz-5.2.5             | 430 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "xz-5.2.5             | 430 KB    | #########2 |  92% \u001b[0m\u001b[91m\n",
      "xz-5.2.5             | 430 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "cython-blis-0.4.1    | 4.3 MB    |            |   0% \u001b[0m\u001b[91m\n",
      "cython-blis-0.4.1    | 4.3 MB    | #######6   |  76% \u001b[0m\u001b[91m\n",
      "cython-blis-0.4.1    | 4.3 MB    | #########8 |  99% \u001b[0m\u001b[91m\n",
      "cython-blis-0.4.1    | 4.3 MB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "typing-3.6.4         | 45 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "typing-3.6.4         | 45 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "pyopenssl-19.0.0     | 81 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "pyopenssl-19.0.0     | 81 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "soupsieve-1.9.4      | 58 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "soupsieve-1.9.4      | 58 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "pyparsing-2.4.7      | 60 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "pyparsing-2.4.7      | 60 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "_pytorch_select-0.2  | 2 KB      |            |   0% \u001b[0m\u001b[91m\n",
      "_pytorch_select-0.2  | 2 KB      | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "lz4-c-1.8.3          | 187 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "lz4-c-1.8.3          | 187 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "asn1crypto-1.3.0     | 159 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "asn1crypto-1.3.0     | 159 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "libgcc-ng-9.2.0      | 8.2 MB    |            |   0% \u001b[0m\u001b[91m\n",
      "libgcc-ng-9.2.0      | 8.2 MB    | #####3     |  53% \u001b[0m\u001b[91m\n",
      "libgcc-ng-9.2.0      | 8.2 MB    | #######7   |  77% \u001b[0m\u001b[91m\n",
      "libgcc-ng-9.2.0      | 8.2 MB    | #########5 |  95% \u001b[0m\u001b[91m\n",
      "libgcc-ng-9.2.0      | 8.2 MB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "libpng-1.6.37        | 308 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "libpng-1.6.37        | 308 KB    | #########6 |  96% \u001b[0m\u001b[91m\n",
      "libpng-1.6.37        | 308 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "nvidia-ml-py3-7.352. | 22 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "nvidia-ml-py3-7.352. | 22 KB     | #####4     |  54% \u001b[0m\u001b[91m\n",
      "nvidia-ml-py3-7.352. | 22 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "spacy-2.2.3          | 9.2 MB    |            |   0% \u001b[0m\u001b[91m\n",
      "spacy-2.2.3          | 9.2 MB    | #####5     |  55% \u001b[0m\u001b[91m\n",
      "spacy-2.2.3          | 9.2 MB    | #######5   |  75% \u001b[0m\u001b[91m\n",
      "spacy-2.2.3          | 9.2 MB    | #########1 |  91% \u001b[0m\u001b[91m\n",
      "spacy-2.2.3          | 9.2 MB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "python-3.6.2         | 27.0 MB   |            |   0% \u001b[0m\u001b[91m\n",
      "python-3.6.2         | 27.0 MB   | #6         |  17% \u001b[0m\u001b[91m\n",
      "python-3.6.2         | 27.0 MB   | ####       |  41% \u001b[0m\u001b[91m\n",
      "python-3.6.2         | 27.0 MB   | ######4    |  64% \u001b[0m\u001b[91m\n",
      "python-3.6.2         | 27.0 MB   | #######9   |  79% \u001b[0m\u001b[91m\n",
      "python-3.6.2         | 27.0 MB   | ########9  |  90% \u001b[0m\u001b[91m\n",
      "python-3.6.2         | 27.0 MB   | #########7 |  97% \u001b[0m\u001b[91m\n",
      "python-3.6.2         | 27.0 MB   | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "readline-7.0         | 1.1 MB    |            |   0% \u001b[0m\u001b[91m\n",
      "readline-7.0         | 1.1 MB    | ########1  |  81% \u001b[0m\u001b[91m\n",
      "readline-7.0         | 1.1 MB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "python_abi-3.6       | 4 KB      |            |   0% \u001b[0m\u001b[91m\n",
      "python_abi-3.6       | 4 KB      | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "gst-plugins-base-1.1 | 4.9 MB    |            |   0% \u001b[0m\u001b[91m\n",
      "gst-plugins-base-1.1 | 4.9 MB    | #######5   |  76% \u001b[0m\u001b[91m\n",
      "gst-plugins-base-1.1 | 4.9 MB    | #########8 |  98% \u001b[0m\u001b[91m\n",
      "gst-plugins-base-1.1 | 4.9 MB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "kiwisolver-1.2.0     | 87 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "kiwisolver-1.2.0     | 87 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "plac-0.9.6           | 18 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "plac-0.9.6           | 18 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "glib-2.56.2          | 4.7 MB    |            |   0% \u001b[0m\u001b[91m\n",
      "glib-2.56.2          | 4.7 MB    | #######5   |  75% \u001b[0m\u001b[91m\n",
      "glib-2.56.2          | 4.7 MB    | #########7 |  98% \u001b[0m\u001b[91m\n",
      "glib-2.56.2          | 4.7 MB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "pyyaml-5.3.1         | 186 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "pyyaml-5.3.1         | 186 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "numpy-base-1.18.1    | 5.2 MB    |            |   0% \u001b[0m\u001b[91m\n",
      "numpy-base-1.18.1    | 5.2 MB    | #######6   |  76% \u001b[0m\u001b[91m\n",
      "numpy-base-1.18.1    | 5.2 MB    | #########1 |  91% \u001b[0m\u001b[91m\n",
      "numpy-base-1.18.1    | 5.2 MB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "libffi-3.2.1         | 47 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "libffi-3.2.1         | 47 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "dbus-1.13.0          | 558 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "dbus-1.13.0          | 558 KB    | #########  |  91% \u001b[0m\u001b[91m\n",
      "dbus-1.13.0          | 558 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "xorg-libxdmcp-1.1.3  | 18 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "xorg-libxdmcp-1.1.3  | 18 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "libgfortran-ng-7.3.0 | 1.7 MB    |            |   0% \u001b[0m\u001b[91m\n",
      "libgfortran-ng-7.3.0 | 1.7 MB    | #######8   |  78% \u001b[0m\u001b[91m\n",
      "libgfortran-ng-7.3.0 | 1.7 MB    | #########8 |  99% \u001b[0m\u001b[91m\n",
      "libgfortran-ng-7.3.0 | 1.7 MB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "libuuid-2.32.1       | 26 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "libuuid-2.32.1       | 26 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "pytz-2019.3          | 237 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "pytz-2019.3          | 237 KB    | #########4 |  94% \u001b[0m\u001b[91m\n",
      "pytz-2019.3          | 237 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "gstreamer-1.12.5     | 3.7 MB    |            |   0% \u001b[0m\u001b[91m\n",
      "gstreamer-1.12.5     | 3.7 MB    | #####6     |  56% \u001b[0m\u001b[91m\n",
      "gstreamer-1.12.5     | 3.7 MB    | #######6   |  76% \u001b[0m\u001b[91m\n",
      "gstreamer-1.12.5     | 3.7 MB    | #########2 |  92% \u001b[0m\u001b[91m\n",
      "gstreamer-1.12.5     | 3.7 MB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "numexpr-2.7.1        | 197 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "numexpr-2.7.1        | 197 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "qt-5.6.2             | 44.5 MB   |            |   0% \u001b[0m\u001b[91m\n",
      "qt-5.6.2             | 44.5 MB   | #          |  11% \u001b[0m\u001b[91m\n",
      "qt-5.6.2             | 44.5 MB   | ##5        |  26% \u001b[0m\u001b[91m\n",
      "qt-5.6.2             | 44.5 MB   | ###9       |  40% \u001b[0m\u001b[91m\n",
      "qt-5.6.2             | 44.5 MB   | #####3     |  53% \u001b[0m\u001b[91m\n",
      "qt-5.6.2             | 44.5 MB   | ######8    |  68% \u001b[0m\u001b[91m\n",
      "qt-5.6.2             | 44.5 MB   | #######9   |  80% \u001b[0m\u001b[91m\n",
      "qt-5.6.2             | 44.5 MB   | ########7  |  88% \u001b[0m\u001b[91m\n",
      "qt-5.6.2             | 44.5 MB   | #########3 |  94% \u001b[0m\n",
      "\u001b[91m\n",
      "qt-5.6.2             | 44.5 MB   | #########7 |  98% \u001b[0m\u001b[91m\n",
      "qt-5.6.2             | 44.5 MB   | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "mkl_fft-1.1.0        | 173 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "mkl_fft-1.1.0        | 173 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "_openmp_mutex-4.5    | 5 KB      |            |   0% \u001b[0m\u001b[91m\n",
      "_openmp_mutex-4.5    | 5 KB      | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "xorg-libxau-1.0.9    | 13 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "xorg-libxau-1.0.9    | 13 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "torchvision-0.4.0    | 2.8 MB    |            |   0% \u001b[0m\u001b[91m\n",
      "torchvision-0.4.0    | 2.8 MB    | #######7   |  77% \u001b[0m\u001b[91m\n",
      "torchvision-0.4.0    | 2.8 MB    | #########8 |  99% \u001b[0m\u001b[91m\n",
      "torchvision-0.4.0    | 2.8 MB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "scipy-1.4.1          | 18.9 MB   |            |   0% \u001b[0m\u001b[91m\n",
      "scipy-1.4.1          | 18.9 MB   | ##7        |  27% \u001b[0m\u001b[91m\n",
      "scipy-1.4.1          | 18.9 MB   | ######3    |  64% \u001b[0m\u001b[91m\n",
      "scipy-1.4.1          | 18.9 MB   | ########   |  80% \u001b[0m\u001b[91m\n",
      "scipy-1.4.1          | 18.9 MB   | #########2 |  93% \u001b[0m\u001b[91m\n",
      "scipy-1.4.1          | 18.9 MB   | ########## | 100% \u001b[0m\u001b[91m\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "yaml-0.2.2           | 82 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "yaml-0.2.2           | 82 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "beautifulsoup4-4.9.0 | 160 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "beautifulsoup4-4.9.0 | 160 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "bottleneck-1.3.2     | 131 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "bottleneck-1.3.2     | 131 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "sqlite-3.20.1        | 1.3 MB    |            |   0% \u001b[0m\u001b[91m\n",
      "sqlite-3.20.1        | 1.3 MB    | ########1  |  82% \u001b[0m\u001b[91m\n",
      "sqlite-3.20.1        | 1.3 MB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "zipp-3.1.0           | 10 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "zipp-3.1.0           | 10 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "cudnn-7.6.5          | 226.4 MB  |            |   0% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | 1          |   2% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | 4          |   4% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | 7          |   7% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #          |  10% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #2         |  13% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #5         |  15% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #7         |  18% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ##         |  20% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ##3        |  23% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ##5        |  26% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ##8        |  28% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ###        |  30% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ###2       |  32% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ###4       |  34% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ###6       |  36% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ###8       |  38% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ####       |  41% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ####3      |  43% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ####5      |  45% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ####7      |  47% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ####9      |  50% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #####2     |  52% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #####5     |  55% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #####7     |  58% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ######     |  60% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ######2    |  63% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ######5    |  65% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ######7    |  68% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ######9    |  70% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #######2   |  72% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #######4   |  75% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #######6   |  77% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #######8   |  78% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #######9   |  79% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########   |  80% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########   |  81% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########1  |  81% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########1  |  81% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########1  |  82% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########1  |  82% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########2  |  82% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########2  |  82% \u001b[0m\n",
      "\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########2  |  82% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########2  |  82% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########2  |  83% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########2  |  83% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########2  |  83% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########2  |  83% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########2  |  83% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########  |  90% \u001b[0m\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########8 |  99% \u001b[0m\n",
      "\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "cudnn-7.6.5          | 226.4 MB  | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "murmurhash-1.0.0     | 16 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "murmurhash-1.0.0     | 16 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "pycparser-2.20       | 89 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "pycparser-2.20       | 89 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "libxcb-1.13          | 396 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "libxcb-1.13          | 396 KB    | ########2  |  83% \u001b[0m\u001b[91m\n",
      "libxcb-1.13          | 396 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "libstdcxx-ng-9.2.0   | 4.5 MB    |            |   0% \u001b[0m\u001b[91m\n",
      "libstdcxx-ng-9.2.0   | 4.5 MB    | #######7   |  77% \u001b[0m\u001b[91m\n",
      "libstdcxx-ng-9.2.0   | 4.5 MB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "setuptools-46.1.3    | 653 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "setuptools-46.1.3    | 653 KB    | #######9   |  80% \u001b[0m\u001b[91m\n",
      "setuptools-46.1.3    | 653 KB    | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "mkl-service-2.3.0    | 64 KB     |            |   0% \u001b[0m\u001b[91m\n",
      "mkl-service-2.3.0    | 64 KB     | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "pthread-stubs-0.4    | 5 KB      |            |   0% \u001b[0m\u001b[91m\n",
      "pthread-stubs-0.4    | 5 KB      | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "mkl-2019.5           | 205.2 MB  |            |   0% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | 1          |   2% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | 2          |   3% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | 6          |   6% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | 9          |  10% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #2         |  13% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #5         |  16% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #8         |  18% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ##1        |  22% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ##4        |  25% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ##8        |  28% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ###1       |  31% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ###4       |  34% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ###7       |  38% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ####       |  41% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ####3      |  44% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ####7      |  47% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #####      |  50% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #####3     |  53% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #####6     |  57% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ######     |  60% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ######3    |  63% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ######6    |  67% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #######    |  70% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #######3   |  73% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #######6   |  76% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #######8   |  78% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########   |  80% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########1  |  81% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########1  |  82% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########2  |  82% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########2  |  83% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########3  |  83% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########3  |  84% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########4  |  84% \u001b[0m\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########4  |  84% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########4  |  85% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########5  |  85% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########5  |  86% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########6  |  86% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########6  |  87% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########7  |  87% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########7  |  88% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########8  |  88% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########8  |  89% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########9  |  89% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########9  |  90% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########  |  90% \u001b[0m\n",
      "\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########  |  90% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########  |  91% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########1 |  91% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########1 |  92% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########2 |  92% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########2 |  93% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########3 |  93% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########3 |  94% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########4 |  94% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########4 |  95% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########5 |  95% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########5 |  96% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########6 |  96% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########6 |  97% \u001b[0m\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########6 |  97% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########7 |  97% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########7 |  98% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########8 |  98% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########8 |  99% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########9 |  99% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | #########9 | 100% \u001b[0m\u001b[91m\n",
      "mkl-2019.5           | 205.2 MB  | ########## | 100% \u001b[0m\u001b[91m\n",
      "\n",
      "expat-2.2.9          | 191 KB    |            |   0% \u001b[0m\u001b[91m\n",
      "expat-2.2.9          | 191 KB    | ########## | 100% \u001b[0m\n",
      "Downloading and Extracting Packages\n",
      "Preparing transaction: ...working... done\n",
      "Verifying transaction: ...working... \n",
      "done\n",
      "Executing transaction: ...working... \n",
      "done\n",
      "Collecting azureml-defaults\n",
      "  Downloading azureml_defaults-1.2.0-py3-none-any.whl (3.0 kB)\n",
      "Collecting azureml-model-management-sdk==1.0.1b6.post1\n",
      "  Downloading azureml_model_management_sdk-1.0.1b6.post1-py2.py3-none-any.whl (130 kB)\n",
      "Collecting json-logging-py==0.2\n",
      "  Downloading json-logging-py-0.2.tar.gz (3.6 kB)\n",
      "Collecting configparser==3.7.4\n",
      "  Downloading configparser-3.7.4-py2.py3-none-any.whl (22 kB)\n",
      "Collecting werkzeug==0.16.1\n",
      "  Downloading Werkzeug-0.16.1-py2.py3-none-any.whl (327 kB)\n",
      "Collecting gunicorn==19.9.0\n",
      "  Downloading gunicorn-19.9.0-py2.py3-none-any.whl (112 kB)\n",
      "Collecting applicationinsights>=0.11.7\n",
      "  Downloading applicationinsights-0.11.9-py2.py3-none-any.whl (58 kB)\n",
      "Collecting azureml-dataprep[fuse]<1.4.0a,>=1.3.5\n",
      "  Downloading azureml_dataprep-1.3.6-py3-none-any.whl (26.6 MB)\n",
      "Collecting azureml-core~=1.2.0\n",
      "  Downloading azureml_core-1.2.0.post2-py3-none-any.whl (1.2 MB)\n",
      "Collecting flask==1.0.3\n",
      "  Downloading Flask-1.0.3-py2.py3-none-any.whl (92 kB)\n",
      "Requirement already satisfied: python-dateutil>=2.5.3 in /azureml-envs/azureml_53f7459b2d11a780edbefaa1f46263fa/lib/python3.6/site-packages (from azureml-model-management-sdk==1.0.1b6.post1->azureml-defaults->-r /azureml-environment-setup/condaenv.vjhm1qhc.requirements.txt (line 1)) (2.8.1)\n",
      "Requirement already satisfied: pytz>=2017.2 in /azureml-envs/azureml_53f7459b2d11a780edbefaa1f46263fa/lib/python3.6/site-packages (from azureml-model-management-sdk==1.0.1b6.post1->azureml-defaults->-r /azureml-environment-setup/condaenv.vjhm1qhc.requirements.txt (line 1)) (2019.3)\n",
      "Collecting liac-arff>=2.1.1\n",
      "  Downloading liac-arff-2.4.0.tar.gz (15 kB)\n",
      "Requirement already satisfied: pandas>=0.20.2 in /azureml-envs/azureml_53f7459b2d11a780edbefaa1f46263fa/lib/python3.6/site-packages (from azureml-model-management-sdk==1.0.1b6.post1->azureml-defaults->-r /azureml-environment-setup/condaenv.vjhm1qhc.requirements.txt (line 1)) (1.0.3)\n",
      "Collecting dill>=0.2.7.1\n",
      "  Downloading dill-0.3.1.1.tar.gz (151 kB)\n",
      "Requirement already satisfied: six>=1.10 in /azureml-envs/azureml_53f7459b2d11a780edbefaa1f46263fa/lib/python3.6/site-packages (from azureml-model-management-sdk==1.0.1b6.post1->azureml-defaults->-r /azureml-environment-setup/condaenv.vjhm1qhc.requirements.txt (line 1)) (1.14.0)\n",
      "Requirement already satisfied: requests>=2.17.3 in /azureml-envs/azureml_53f7459b2d11a780edbefaa1f46263fa/lib/python3.6/site-packages (from azureml-model-management-sdk==1.0.1b6.post1->azureml-defaults->-r /azureml-environment-setup/condaenv.vjhm1qhc.requirements.txt (line 1)) (2.23.0)\n",
      "Requirement already satisfied: numpy>=1.13.0 in /azureml-envs/azureml_53f7459b2d11a780edbefaa1f46263fa/lib/python3.6/site-packages (from azureml-model-management-sdk==1.0.1b6.post1->azureml-defaults->-r /azureml-environment-setup/condaenv.vjhm1qhc.requirements.txt (line 1)) (1.18.1)\n",
      "Collecting adal>=0.4.5\n",
      "  Downloading adal-1.2.2-py2.py3-none-any.whl (53 kB)\n",
      "Collecting azureml-dataprep-native<15.0.0,>=14.1.0\n",
      "  Downloading azureml_dataprep_native-14.1.0-cp36-cp36m-manylinux1_x86_64.whl (1.3 MB)\n",
      "Collecting azure-identity>=1.2.0\n",
      "  Downloading azure_identity-1.3.1-py2.py3-none-any.whl (61 kB)\n",
      "Collecting dotnetcore2>=2.1.13\n",
      "  Downloading dotnetcore2-2.1.13-py3-none-manylinux1_x86_64.whl (29.3 MB)\n",
      "Collecting cloudpickle>=1.1.0\n",
      "  Downloading cloudpickle-1.3.0-py2.py3-none-any.whl (26 kB)\n",
      "Collecting fusepy>=3.0.1; extra == \"fuse\"\n",
      "  Downloading fusepy-3.0.1.tar.gz (11 kB)\n",
      "Collecting ruamel.yaml<=0.15.89,>=0.15.35\n",
      "  Downloading ruamel.yaml-0.15.89-cp36-cp36m-manylinux1_x86_64.whl (651 kB)\n",
      "Collecting azure-mgmt-resource<9.0.0,>=1.2.1\n",
      "  Downloading azure_mgmt_resource-8.0.1-py2.py3-none-any.whl (758 kB)\n",
      "Collecting msrest>=0.5.1\n",
      "  Downloading msrest-0.6.13-py2.py3-none-any.whl (83 kB)\n",
      "Collecting azure-mgmt-authorization>=0.40.0\n",
      "  Downloading azure_mgmt_authorization-0.60.0-py2.py3-none-any.whl (82 kB)\n",
      "Collecting jmespath\n",
      "  Downloading jmespath-0.9.5-py2.py3-none-any.whl (24 kB)\n",
      "Collecting azure-mgmt-containerregistry>=2.0.0\n",
      "  Downloading azure_mgmt_containerregistry-2.8.0-py2.py3-none-any.whl (718 kB)\n",
      "Collecting azure-mgmt-keyvault>=0.40.0\n",
      "  Downloading azure_mgmt_keyvault-2.2.0-py2.py3-none-any.whl (89 kB)\n",
      "Collecting PyJWT\n",
      "  Downloading PyJWT-1.7.1-py2.py3-none-any.whl (18 kB)\n",
      "Collecting azure-mgmt-storage>=1.5.0\n",
      "  Downloading azure_mgmt_storage-9.0.0-py2.py3-none-any.whl (525 kB)\n",
      "Collecting azure-graphrbac>=0.40.0\n",
      "  Downloading azure_graphrbac-0.61.1-py2.py3-none-any.whl (141 kB)\n",
      "Requirement already satisfied: urllib3>=1.23 in /azureml-envs/azureml_53f7459b2d11a780edbefaa1f46263fa/lib/python3.6/site-packages (from azureml-core~=1.2.0->azureml-defaults->-r /azureml-environment-setup/condaenv.vjhm1qhc.requirements.txt (line 1)) (1.25.7)\n",
      "Collecting SecretStorage\n",
      "  Downloading SecretStorage-3.1.2-py3-none-any.whl (14 kB)\n",
      "Collecting contextlib2\n",
      "  Downloading contextlib2-0.6.0.post1-py2.py3-none-any.whl (9.8 kB)\n",
      "Requirement already satisfied: pyopenssl in /azureml-envs/azureml_53f7459b2d11a780edbefaa1f46263fa/lib/python3.6/site-packages (from azureml-core~=1.2.0->azureml-defaults->-r /azureml-environment-setup/condaenv.vjhm1qhc.requirements.txt (line 1)) (19.0.0)\n",
      "Collecting azure-common>=1.1.12\n",
      "  Downloading azure_common-1.1.25-py2.py3-none-any.whl (12 kB)\n",
      "Collecting jsonpickle\n",
      "  Downloading jsonpickle-1.3-py2.py3-none-any.whl (32 kB)\n",
      "Collecting msrestazure>=0.4.33\n",
      "  Downloading msrestazure-0.6.3-py2.py3-none-any.whl (40 kB)\n",
      "Collecting backports.tempfile\n",
      "  Downloading backports.tempfile-1.0-py2.py3-none-any.whl (4.4 kB)\n",
      "Collecting ndg-httpsclient\n",
      "  Downloading ndg_httpsclient-0.5.1-py3-none-any.whl (34 kB)\n",
      "Requirement already satisfied: cryptography!=1.9,!=2.0.*,!=2.1.*,!=2.2.* in /azureml-envs/azureml_53f7459b2d11a780edbefaa1f46263fa/lib/python3.6/site-packages (from azureml-core~=1.2.0->azureml-defaults->-r /azureml-environment-setup/condaenv.vjhm1qhc.requirements.txt (line 1)) (2.5)\n",
      "Collecting pathspec\n",
      "  Downloading pathspec-0.8.0-py2.py3-none-any.whl (28 kB)\n",
      "Collecting docker\n",
      "  Downloading docker-4.2.0-py2.py3-none-any.whl (143 kB)\n",
      "Collecting itsdangerous>=0.24\n",
      "  Downloading itsdangerous-1.1.0-py2.py3-none-any.whl (16 kB)\n",
      "Collecting click>=5.1\n",
      "  Downloading click-7.1.1-py2.py3-none-any.whl (82 kB)\n",
      "Collecting Jinja2>=2.10\n",
      "  Downloading Jinja2-2.11.1-py2.py3-none-any.whl (126 kB)\n",
      "Requirement already satisfied: certifi>=2017.4.17 in /azureml-envs/azureml_53f7459b2d11a780edbefaa1f46263fa/lib/python3.6/site-packages (from requests>=2.17.3->azureml-model-management-sdk==1.0.1b6.post1->azureml-defaults->-r /azureml-environment-setup/condaenv.vjhm1qhc.requirements.txt (line 1)) (2020.4.5.1)\n",
      "Requirement already satisfied: idna<3,>=2.5 in /azureml-envs/azureml_53f7459b2d11a780edbefaa1f46263fa/lib/python3.6/site-packages (from requests>=2.17.3->azureml-model-management-sdk==1.0.1b6.post1->azureml-defaults->-r /azureml-environment-setup/condaenv.vjhm1qhc.requirements.txt (line 1)) (2.9)\n",
      "Requirement already satisfied: chardet<4,>=3.0.2 in /azureml-envs/azureml_53f7459b2d11a780edbefaa1f46263fa/lib/python3.6/site-packages (from requests>=2.17.3->azureml-model-management-sdk==1.0.1b6.post1->azureml-defaults->-r /azureml-environment-setup/condaenv.vjhm1qhc.requirements.txt (line 1)) (3.0.4)\n",
      "Collecting msal<2.0.0,>=1.0.0\n",
      "  Downloading msal-1.2.0-py2.py3-none-any.whl (46 kB)\n",
      "Collecting msal-extensions~=0.1.3\n",
      "  Downloading msal_extensions-0.1.3-py2.py3-none-any.whl (9.0 kB)\n",
      "Collecting azure-core<2.0.0,>=1.0.0\n",
      "  Downloading azure_core-1.4.0-py2.py3-none-any.whl (114 kB)\n",
      "Collecting distro>=1.2.0\n",
      "  Downloading distro-1.5.0-py2.py3-none-any.whl (18 kB)\n",
      "Collecting requests-oauthlib>=0.5.0\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "  Downloading requests_oauthlib-1.3.0-py2.py3-none-any.whl (23 kB)\n",
      "Collecting isodate>=0.6.0\n",
      "  Downloading isodate-0.6.0-py2.py3-none-any.whl (45 kB)\n",
      "Collecting jeepney>=0.4.2\n",
      "  Downloading jeepney-0.4.3-py3-none-any.whl (21 kB)\n",
      "Collecting backports.weakref\n",
      "  Downloading backports.weakref-1.0.post1-py2.py3-none-any.whl (5.2 kB)\n",
      "Collecting pyasn1>=0.1.1\n",
      "  Downloading pyasn1-0.4.8-py2.py3-none-any.whl (77 kB)\n",
      "Requirement already satisfied: asn1crypto>=0.21.0 in /azureml-envs/azureml_53f7459b2d11a780edbefaa1f46263fa/lib/python3.6/site-packages (from cryptography!=1.9,!=2.0.*,!=2.1.*,!=2.2.*->azureml-core~=1.2.0->azureml-defaults->-r /azureml-environment-setup/condaenv.vjhm1qhc.requirements.txt (line 1)) (1.3.0)\n",
      "Requirement already satisfied: cffi!=1.11.3,>=1.8 in /azureml-envs/azureml_53f7459b2d11a780edbefaa1f46263fa/lib/python3.6/site-packages (from cryptography!=1.9,!=2.0.*,!=2.1.*,!=2.2.*->azureml-core~=1.2.0->azureml-defaults->-r /azureml-environment-setup/condaenv.vjhm1qhc.requirements.txt (line 1)) (1.14.0)\n",
      "Collecting websocket-client>=0.32.0\n",
      "  Downloading websocket_client-0.57.0-py2.py3-none-any.whl (200 kB)\n",
      "Collecting MarkupSafe>=0.23\n",
      "  Downloading MarkupSafe-1.1.1-cp36-cp36m-manylinux1_x86_64.whl (27 kB)\n",
      "Collecting portalocker~=1.0\n",
      "  Downloading portalocker-1.6.0-py2.py3-none-any.whl (14 kB)\n",
      "Collecting oauthlib>=3.0.0\n",
      "  Downloading oauthlib-3.1.0-py2.py3-none-any.whl (147 kB)\n",
      "Requirement already satisfied: pycparser in /azureml-envs/azureml_53f7459b2d11a780edbefaa1f46263fa/lib/python3.6/site-packages (from cffi!=1.11.3,>=1.8->cryptography!=1.9,!=2.0.*,!=2.1.*,!=2.2.*->azureml-core~=1.2.0->azureml-defaults->-r /azureml-environment-setup/condaenv.vjhm1qhc.requirements.txt (line 1)) (2.20)\n",
      "Building wheels for collected packages: json-logging-py, liac-arff, dill, fusepy\n",
      "  Building wheel for json-logging-py (setup.py): started\n",
      "  Building wheel for json-logging-py (setup.py): finished with status 'done'\n",
      "  Created wheel for json-logging-py: filename=json_logging_py-0.2-py3-none-any.whl size=3923 sha256=696d823b1c81fef17df683ba5c3441ab5db0416bd7be2230899bc478d094315b\n",
      "  Stored in directory: /root/.cache/pip/wheels/e2/1d/52/535a274b9c2ce7d4064838f2bdb62013801281ef7d7f21e2ee\n",
      "  Building wheel for liac-arff (setup.py): started\n",
      "  Building wheel for liac-arff (setup.py): finished with status 'done'\n",
      "  Created wheel for liac-arff: filename=liac_arff-2.4.0-py3-none-any.whl size=13333 sha256=2e920f4163d3fe21d07dc9f6b161f3ffb32f6ff0bbc5c139dee1d8dd201d7a9f\n",
      "  Stored in directory: /root/.cache/pip/wheels/ba/2a/e1/6f7be2e2ea150e2486bff64fd6f0670f4f35f4c8f31c819fb8\n",
      "  Building wheel for dill (setup.py): started\n",
      "  Building wheel for dill (setup.py): finished with status 'done'\n",
      "  Created wheel for dill: filename=dill-0.3.1.1-py3-none-any.whl size=78530 sha256=b2f132b2a0f3ebbe6de68e33e730d17a6bbc2d515c31fd0b16b0823a282b9246\n",
      "  Stored in directory: /root/.cache/pip/wheels/09/84/74/d2b4feb9ac9488bc83c475cb2cbe8e8b7d9cea8320d32f3787\n",
      "  Building wheel for fusepy (setup.py): started\n",
      "  Building wheel for fusepy (setup.py): finished with status 'done'\n",
      "  Created wheel for fusepy: filename=fusepy-3.0.1-py3-none-any.whl size=10503 sha256=e9607443d8dfeaae6c454bb9c0ef6a88d97288cc5bfd349494cd971288a6b3e7\n",
      "  Stored in directory: /root/.cache/pip/wheels/21/5c/83/1dd7e8a232d12227e5410120f4374b33adeb4037473105b079\n",
      "Successfully built json-logging-py liac-arff dill fusepy\n",
      "Installing collected packages: liac-arff, dill, PyJWT, adal, azureml-model-management-sdk, json-logging-py, configparser, werkzeug, gunicorn, applicationinsights, azureml-dataprep-native, msal, portalocker, msal-extensions, azure-core, azure-identity, distro, dotnetcore2, cloudpickle, fusepy, azureml-dataprep, ruamel.yaml, azure-common, oauthlib, requests-oauthlib, isodate, msrest, msrestazure, azure-mgmt-resource, azure-mgmt-authorization, jmespath, azure-mgmt-containerregistry, azure-mgmt-keyvault, azure-mgmt-storage, azure-graphrbac, jeepney, SecretStorage, contextlib2, jsonpickle, backports.weakref, backports.tempfile, pyasn1, ndg-httpsclient, pathspec, websocket-client, docker, azureml-core, itsdangerous, click, MarkupSafe, Jinja2, flask, azureml-defaults\n",
      "Successfully installed Jinja2-2.11.1 MarkupSafe-1.1.1 PyJWT-1.7.1 SecretStorage-3.1.2 adal-1.2.2 applicationinsights-0.11.9 azure-common-1.1.25 azure-core-1.4.0 azure-graphrbac-0.61.1 azure-identity-1.3.1 azure-mgmt-authorization-0.60.0 azure-mgmt-containerregistry-2.8.0 azure-mgmt-keyvault-2.2.0 azure-mgmt-resource-8.0.1 azure-mgmt-storage-9.0.0 azureml-core-1.2.0.post2 azureml-dataprep-1.3.6 azureml-dataprep-native-14.1.0 azureml-defaults-1.2.0 azureml-model-management-sdk-1.0.1b6.post1 backports.tempfile-1.0 backports.weakref-1.0.post1 click-7.1.1 cloudpickle-1.3.0 configparser-3.7.4 contextlib2-0.6.0.post1 dill-0.3.1.1 distro-1.5.0 docker-4.2.0 dotnetcore2-2.1.13 flask-1.0.3 fusepy-3.0.1 gunicorn-19.9.0 isodate-0.6.0 itsdangerous-1.1.0 jeepney-0.4.3 jmespath-0.9.5 json-logging-py-0.2 jsonpickle-1.3 liac-arff-2.4.0 msal-1.2.0 msal-extensions-0.1.3 msrest-0.6.13 msrestazure-0.6.3 ndg-httpsclient-0.5.1 oauthlib-3.1.0 pathspec-0.8.0 portalocker-1.6.0 pyasn1-0.4.8 requests-oauthlib-1.3.0 ruamel.yaml-0.15.89 websocket-client-0.57.0 werkzeug-0.16.1\n",
      "\u001b[91m\n",
      "\u001b[0m#\n",
      "# To activate this environment, use:\n",
      "# > source activate /azureml-envs/azureml_53f7459b2d11a780edbefaa1f46263fa\n",
      "#\n",
      "# To deactivate an active environment, use:\n",
      "# > source deactivate\n",
      "#\n",
      "\n",
      "\n",
      "Removing intermediate container 1da2c76e922f\n",
      " ---> 59fb40152ab5\n",
      "Step 15/22 : ENV PATH /azureml-envs/azureml_53f7459b2d11a780edbefaa1f46263fa/bin:$PATH\n",
      " ---> Running in 9e33fd85c589\n",
      "Removing intermediate container 9e33fd85c589\n",
      " ---> 479f84d92dce\n",
      "Step 16/22 : ENV AZUREML_CONDA_ENVIRONMENT_PATH /azureml-envs/azureml_53f7459b2d11a780edbefaa1f46263fa\n",
      " ---> Running in 88ec05ba4e21\n",
      "Removing intermediate container 88ec05ba4e21\n",
      " ---> cb82b702bad6\n",
      "Step 17/22 : ENV LD_LIBRARY_PATH /azureml-envs/azureml_53f7459b2d11a780edbefaa1f46263fa/lib:$LD_LIBRARY_PATH\n",
      " ---> Running in a0aeaf0b2cd2\n",
      "Removing intermediate container a0aeaf0b2cd2\n",
      " ---> cb38a0ab4672\n",
      "Step 18/22 : COPY azureml-environment-setup/spark_cache.py azureml-environment-setup/log4j.properties /azureml-environment-setup/\n",
      " ---> 6bc39e22177f\n",
      "Step 19/22 : RUN if [ $SPARK_HOME ]; then /bin/bash -c '$SPARK_HOME/bin/spark-submit  /azureml-environment-setup/spark_cache.py'; fi\n",
      " ---> Running in 6c88b2149ba2\n",
      "Removing intermediate container 6c88b2149ba2\n",
      " ---> 51bb66b5b04f\n",
      "Step 20/22 : ENV AZUREML_ENVIRONMENT_IMAGE True\n",
      " ---> Running in 90836194778e\n",
      "Removing intermediate container 90836194778e\n",
      " ---> 9518957272e2\n",
      "Step 21/22 : CMD [\"bash\"]\n",
      " ---> Running in 972f8c771ca9\n",
      "Removing intermediate container 972f8c771ca9\n",
      " ---> f6d51b4369e8\n",
      "Step 22/22 : EXPOSE 5001 8883 8888\n",
      " ---> Running in 0c647ed1ddce\n",
      "Removing intermediate container 0c647ed1ddce\n",
      " ---> 9391fb3a6709\n",
      "Successfully built 9391fb3a6709\n",
      "Successfully tagged cvwsbbd59dea.azurecr.io/azureml/azureml_a9f62c4b6fbf408218d5b60ae4f43f11:latest\n",
      "2020/04/09 20:43:35 Successfully executed container: acb_step_0\n",
      "2020/04/09 20:43:35 Executing step ID: acb_step_1. Timeout(sec): 5400, Working directory: '', Network: 'acb_default_network'\n",
      "2020/04/09 20:43:35 Pushing image: cvwsbbd59dea.azurecr.io/azureml/azureml_a9f62c4b6fbf408218d5b60ae4f43f11:latest, attempt 1\n",
      "The push refers to repository [cvwsbbd59dea.azurecr.io/azureml/azureml_a9f62c4b6fbf408218d5b60ae4f43f11]\n",
      "1bf21c5cbd6d: Preparing\n",
      "b156ccc9c968: Preparing\n",
      "fa581aa133db: Preparing\n",
      "dcf2f1c2d5fe: Preparing\n",
      "7049b31c7d29: Preparing\n",
      "7ca872f79cb3: Preparing\n",
      "597926253e5a: Preparing\n",
      "a52b426fb3ad: Preparing\n",
      "a49a0ffb7d87: Preparing\n",
      "5351bc49e1c0: Preparing\n",
      "e1171d4d60ca: Preparing\n",
      "6ef1a8ae63b7: Preparing\n",
      "85389f9ead9e: Preparing\n",
      "f2608f66a0e3: Preparing\n",
      "0e259b09e5f4: Preparing\n",
      "340dc32eb998: Preparing\n",
      "df18b66efaa6: Preparing\n",
      "ccdb13a20bf2: Preparing\n",
      "9513cdf4e497: Preparing\n",
      "7f083f9454c0: Preparing\n",
      "29f36b5893dc: Preparing\n",
      "7ca872f79cb3: Waiting\n",
      "597926253e5a: Waiting\n",
      "a52b426fb3ad: Waiting\n",
      "a49a0ffb7d87: Waiting\n",
      "5351bc49e1c0: Waiting\n",
      "e1171d4d60ca: Waiting\n",
      "6ef1a8ae63b7: Waiting\n",
      "85389f9ead9e: Waiting\n",
      "f2608f66a0e3: Waiting\n",
      "0e259b09e5f4: Waiting\n",
      "340dc32eb998: Waiting\n",
      "df18b66efaa6: Waiting\n",
      "ccdb13a20bf2: Waiting\n",
      "9513cdf4e497: Waiting\n",
      "7f083f9454c0: Waiting\n",
      "29f36b5893dc: Waiting\n",
      "fa581aa133db: Pushed\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "7049b31c7d29: Pushed\n",
      "1bf21c5cbd6d: Pushed\n",
      "dcf2f1c2d5fe: Pushed\n",
      "a49a0ffb7d87: Pushed\n",
      "a52b426fb3ad: Pushed\n",
      "7ca872f79cb3: Pushed\n",
      "e1171d4d60ca: Layer already exists\n",
      "85389f9ead9e: Layer already exists\n",
      "6ef1a8ae63b7: Layer already exists\n",
      "f2608f66a0e3: Layer already exists\n",
      "0e259b09e5f4: Layer already exists\n",
      "340dc32eb998: Layer already exists\n",
      "df18b66efaa6: Layer already exists\n",
      "ccdb13a20bf2: Layer already exists\n",
      "9513cdf4e497: Layer already exists\n",
      "29f36b5893dc: Layer already exists\n",
      "7f083f9454c0: Layer already exists\n",
      "597926253e5a: Pushed\n",
      "5351bc49e1c0: Pushed\n",
      "b156ccc9c968: Pushed\n",
      "latest: digest: sha256:f9f43c62c1a99f949d80c18af70fdd175cebc8a0994cc0d3a8f505612ca3a01b size: 4727\n",
      "2020/04/09 20:47:40 Successfully pushed image: cvwsbbd59dea.azurecr.io/azureml/azureml_a9f62c4b6fbf408218d5b60ae4f43f11:latest\n",
      "2020/04/09 20:47:40 Step ID: acb_step_0 marked as successful (elapsed time in seconds: 698.968631)\n",
      "2020/04/09 20:47:40 Populating digests for step ID: acb_step_0...\n",
      "2020/04/09 20:47:43 Successfully populated digests for step ID: acb_step_0\n",
      "2020/04/09 20:47:43 Step ID: acb_step_1 marked as successful (elapsed time in seconds: 245.022024)\n",
      "2020/04/09 20:47:43 The following dependencies were found:\n",
      "2020/04/09 20:47:43 \n",
      "- image:\n",
      "    registry: cvwsbbd59dea.azurecr.io\n",
      "    repository: azureml/azureml_a9f62c4b6fbf408218d5b60ae4f43f11\n",
      "    tag: latest\n",
      "    digest: sha256:f9f43c62c1a99f949d80c18af70fdd175cebc8a0994cc0d3a8f505612ca3a01b\n",
      "  runtime-dependency:\n",
      "    registry: mcr.microsoft.com\n",
      "    repository: azureml/base\n",
      "    tag: intelmpi2018.3-ubuntu16.04\n",
      "    digest: sha256:a1b514f3ba884b9a7695cbba5638933ddaf222e8ce3e8c81e8cdf861679abb05\n",
      "  buildtime-dependency:\n",
      "  - registry: mcr.microsoft.com\n",
      "    repository: azureml/o16n-base/python-assets\n",
      "    tag: latest\n",
      "    digest: sha256:065414379a261e7931bd91518c83113085848ba19890ef75e8f5e6ffd62c6b86\n",
      "  git: {}\n",
      "\n",
      "Run ID: ca4j was successful after 15m53s\n",
      "Image Build Status: Succeeded\n",
      "\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<azureml.core.environment.ImageBuildDetails at 0x1c3529386a0>"
      ]
     },
     "execution_count": 20,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Since building the docker image for the first time requires a few minutes, let's start building the image\n",
    "# that we'll be using for deployment now and monitor the build through the streamed logs.\n",
    "cv_test_env.build(ws).wait_for_completion(show_output=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 3.E Setting up compute resources - Azure Container Instance (ACI) <a id=\"compute\"></a>\n",
    "We will now use the docker image that was built from the environment that we specified to deploy the model to Azure Container Instance (ACI).\n",
    "\n",
    "In this notebook, we use [Azure Container Instances](https://docs.microsoft.com/en-us/azure/container-instances/container-instances-overview) (ACI) which are good for quick and [cost-effective](https://azure.microsoft.com/en-us/pricing/details/container-instances/) development/test deployment scenarios.\n",
    "\n",
    "To set them up properly, we need to indicate the number of CPU cores and the amount of memory we want to allocate to our web service. Optional tags and descriptions are also available for us to identify the instances in AzureML when looking at the `Compute` tab in the Azure Portal.\n",
    "\n",
    "<b>NOTE:</b> Since the docker image was built in the previous step, we will be able to reuse the built image to deploy the model to other compute targets as well, allowing us to reduce the time spent on building the docker images.\n",
    "\n",
    "To learn more about reusing environments across Azure Machine Learning, please refer to the [documentation page](\n",
    "https://docs.microsoft.com/en-us/azure/machine-learning/how-to-use-environments)\n",
    "\n",
    "<i><b>Note:</b> For production workloads, it is better to use [Azure Kubernetes Service](https://docs.microsoft.com/en-us/azure/aks/) (AKS) instead. We will demonstrate how to do this in the [next notebook](22_deployment_on_azure_kubernetes_service.ipynb).<i>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [],
   "source": [
    "from azureml.core import Webservice\n",
    "from azureml.core.model import InferenceConfig\n",
    "from azureml.core.webservice import AciWebservice\n",
    "from azureml.exceptions import WebserviceException\n",
    "\n",
    "\n",
    "service_name = 'im-classif-websvc'\n",
    "\n",
    "# Remove any existing service under the same name.\n",
    "try:\n",
    "    Webservice(ws, service_name).delete()\n",
    "except WebserviceException:\n",
    "    pass\n",
    "\n",
    "inference_config = InferenceConfig(entry_script='score.py', environment=cv_test_env)\n",
    "\n",
    "# If you would like to increase the number of cpu cores and memory used for the webservice,\n",
    "# update the corresponding settings for cpu_cores and memory_gb\n",
    "aci_config = AciWebservice.deploy_configuration(cpu_cores=1, memory_gb=1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 3.F Web service deployment <a id=\"websvc\"></a>\n",
    "\n",
    "The final step to deploying our web service is to call `WebService.deploy_from_image()`. This function uses the Docker image and the deployment configuration we created above to perform the following:\n",
    "\n",
    "- Deploy the docker image to an Azure Container Instance\n",
    "- Call the `init()` function in our scoring file\n",
    "- Provide an HTTP endpoint for scoring calls"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Running................................................\n",
      "Succeeded\n",
      "ACI service creation operation finished, operation \"Succeeded\"\n"
     ]
    }
   ],
   "source": [
    "service = Model.deploy(workspace=ws,\n",
    "                       name=service_name,\n",
    "                       models=[model],\n",
    "                       inference_config=inference_config,\n",
    "                       deployment_config=aci_config)\n",
    "# Deploy the web service\n",
    "service.wait_for_deployment(show_output=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "When successful, we expect to see the following:\n",
    "\n",
    "`\n",
    "Creating service\n",
    "Running .....\n",
    "SucceededACI service creation operation finished, operation \"Succeeded\"`\n",
    "\n",
    "In the case where the deployment is not successful, we can look at the image and service logs to debug. [These instructions](https://docs.microsoft.com/en-us/azure/machine-learning/service/how-to-troubleshoot-deployment) can also be helpful."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "scrolled": false
   },
   "outputs": [],
   "source": [
    "# Access the service logs\n",
    "# print(service.get_logs())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Service im-classif-websvc is _Healthy_ and available at http://49381d74-9c78-4f1c-b784-ae8baab16766.eastus.azurecontainer.io/score\n"
     ]
    }
   ],
   "source": [
    "# Retrieve the service status\n",
    "print(f\"Service {service.name} is _{service.state}_ and available at {service.scoring_uri}\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We can also check the presence and status of both our new Docker image and web service on the Azure portal, under the `Images` and `Deployments` tabs, respectively.\n",
    "\n",
    "\n",
    "<img src=\"media/docker_images.jpg\" width=\"800\" alt=\"Azure portal view of the Images section\">\n",
    "<img src=\"media/deployments.jpg\" width=\"800\" alt=\"Azure portal view of the Deployments section\">"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 4. Notes on web service deployment <a id=\"notes\"></a>\n",
    "\n",
    "As we discussed above, Azure Container Instances tend to be used to develop and test deployments. They are typically configured with CPUs, which usually suffice when the number of requests per second is not too high. When working with several instances, we can configure them further by specifically [allocating CPU resources](https://docs.microsoft.com/en-us/azure/container-instances/container-instances-container-groups#deployment) to each of them.\n",
    "\n",
    "For production requirements, i.e. when &gt; 100 requests per second are expected, we recommend deploying models to Azure Kubernetes Service (AKS). It is a convenient infrastructure as it manages hosted Kubernetes environments, and makes it easy to deploy and manage containerized applications without container orchestration expertise. It also supports deployments with CPU clusters and deployments with GPU clusters.\n",
    "\n",
    "We will see an example of this in the [next notebook](22_deployment_on_azure_kubernetes_service.ipynb)."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 5. Clean up <a id=\"clean\"></a>\n",
    "\n",
    "Throughout the notebook, we used a workspace and Azure container instances. To get a sense of the cost we incurred, we can refer to this [calculator](https://azure.microsoft.com/en-us/pricing/calculator/). We can also navigate to the [Cost Management + Billing](https://ms.portal.azure.com/#blade/Microsoft_Azure_Billing/ModernBillingMenuBlade/Overview) pane on the portal, click on our subscription ID, and click on the Cost Analysis tab to check our credit usage.\n",
    "\n",
    "In order not to incur extra costs, let's delete the resources we no longer need.\n",
    "\n",
    "Once we have verified that our web service works well on ACI (cf. \"Next steps\" section below), we can delete it. This helps reduce [costs](https://azure.microsoft.com/en-us/pricing/details/container-instances/), since the container group we were paying for no longer exists, and allows us to keep our workspace clean."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "# service.delete()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "If our goal is to continue using our workspace, we should keep it available. On the contrary, if we plan on no longer using it and its associated resources, we can delete it.\n",
    "\n",
    "<i><b>Note:</b> Deleting the workspace will delete all the experiments, outputs, models, Docker images, deployments, etc. that we created in that workspace</i>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "# ws.delete(delete_dependent_resources=True)\n",
    "# This deletes our workspace, the container registry, the account storage, Application Insights and the key vault"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 6. Next steps <a id=\"next-steps\"></a>\n",
    "\n",
    "In the [next tutorial](22_deployment_on_azure_kubernetes_service.ipynb), we will leverage the same Docker image, and deploy our model on AKS. We will then test both of our web services in the [23_aci_aks_web_service_testing.ipynb](23_aci_aks_web_service_testing.ipynb) notebook."
   ]
  }
 ],
 "metadata": {
  "celltoolbar": "Tags",
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.8"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
